代码之家  ›  专栏  ›  技术社区  ›  michele

jQuery从字符串更改数据格式

  •  2
  • michele  · 技术社区  · 14 年前

    我有这个字符串: 2010-09-21T15:48:12.754+02:00

    我会将其转换为以下格式: 2010年9月21日星期二15:48:12 CEST

    如何使用javascript或jQuery实现这一点?

    谢谢。 议员。

    4 回复  |  直到 14 年前
        1
  •  0
  •   erickb    14 年前

    试试这个:

    var d = new Date("2010-09-21T15:48:12.754+02:00");
    var date = d.toDateString().split(/\s/);
    var time = d.getHours() +':'+ d.getMinutes() +':'+ d.getSeconds();
    date.splice(3, 3, time, 'CEST', d.getFullYear());
    date.join(' '); // Tue Sep 21 15:48:12 CEST 2010 
    
        2
  •  1
  •   Topera    14 年前

    var myDate = new Date("2010-09-21T15:48:12.754+02:00")
    alert(myDate);
    

    编辑

    如果需要,可以编写自己的日期格式,例如:

    var date = new Date("2010-09-21T15:48:12.754+02:00");
    var days = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];
    var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']; 
    var myDate = '';
    myDate += days[date.getDay()] + " " + months[date.getMonth()] + " " + date.getDate() + " ";
    myDate += date.getHours() + ":" + date.getMinutes() + ":" + date.getSeconds() + " ";
    myDate += "0" + date.getTimezoneOffset() / 60 + ":00 " + date.getFullYear();
    alert(myDate);
    

    jsfiddle .


    编辑

    // crazy date
    var date = new Date("2010-09-22");
    var days = ['Weekend!', 'Workday', 'Workday', 'Workday', 'Workday', 'Workday', 'Weekend!'];
    var months = ['Winter', 'Winter', 'Spring', 'Spring', 'Spring', 'Summer', 'Summer', 'Summer', 'Autumn', 'Autumn', 'Autumn', 'Winter'];
    var myDate = "We are in " + months[date.getMonth()] + " and today is a " +  days[date.getDay()];
    alert(myDate);
    
        3
  •  0
  •   Nik    14 年前
        4
  •  0
  •   michele    14 年前

    解决了的。

    var datasplit=obj.requests[i].start.split("T");
    
                        datasplit[1]=datasplit[1].slice(0,7);
    
                        var d = new Date(datasplit[0]+" "+datasplit[1]);
                        var date = d.toDateString().split(/\s/);
                        var time = d.getHours() +':'+ d.getMinutes() +':'+ d.getSeconds();
                        date.splice(3, 3, time, 'CEST', d.getFullYear());
                        date.join(' '); // Tue Sep 21 15:48:12 CEST 2010
                        //alert(date);
                        var data=date.toString();
                        data=data.replace(/,/g," ");
    

    推荐文章