通过Javascript或Jquery在客户端格式化JSON日期时间

时间:2012-11-25 09:51:38

标签: javascript jquery json

  

可能重复:
  Convert a date to string in Javascript

我在客户端以json格式约会:

/Date(1352745000000)/

我试图解析Json日期的代码:

eval(dateTime.replace(/\/Date\((\d+)\)\//gi, "new Date($1)"));

new Date(parseInt(dateTime.substr(6)));

我得到的是:

Tue Nov 27 2012 00:00:00 GMT+0530 (India Standard Time)

欲望输出

 2012-11-27 11:16

我无法弄清楚我们将如何得到这个。

3 个答案:

答案 0 :(得分:7)

var date = new Date(parseInt(dateTime.substr(6)));
var formatted = date.getFullYear() + "-" + 
      ("0" + (date.getMonth() + 1)).slice(-2) + "-" + 
      ("0" + date.getDate()).slice(-2) + " " + date.getHours() + ":" + 
      date.getMinutes(); 

答案 1 :(得分:5)

最好不要尝试用这个节省空间:)

var str, year, month, day, hour, minute, d, finalDate;

str = "/Date(1352745000000)/".replace(/\D/g, "");
d = new Date( parseInt( str ) );

year = d.getFullYear();
month = pad( d.getMonth() + 1 );
day = pad( d.getDate() );
hour = pad( d.getHours() );
minutes = pad( d.getMinutes() );

finalDate =  year + "-" + month + "-" + day + " " + hour + ":" + minutes;

function pad( num ) {
    num = "0" + num;
    return num.slice( -2 );
}

答案 2 :(得分:0)

您获得的输出不是字符串 - 您将获得Date object的字符串表示。

在进一步处理之前,您需要以适当的方式对其进行格式化。要了解如何执行此操作,请参阅以下答案:https://stackoverflow.com/a/8398929/548696

要为日期添加时间,请参阅Date JS对象的文档:https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Date