将Json Date转换为日期

时间:2013-07-18 07:30:57

标签: jquery json

我使用以下代码将JSON Date转换为Original Date。以下是我的代码..

    var convertDate = function (jsonDate) {
            var date = new Date(parseInt(jsonDate.substr(6)));
            return date.format("mm-dd-yyyy");
       };

alert(convertDate(aData["Date"]));

以下错误显示在Firebug中。

 if (isNaN(date)) throw SyntaxError("invalid date");

任何帮助......

3 个答案:

答案 0 :(得分:0)

日期解析的工作原理如下:

 var dateObject = new Date("12-15-2012 01:23");

答案 1 :(得分:0)

尝试此功能

function convertDate(jsonDate) {
    var offset = new Date().getTimezoneOffset() * 60000;
    var parts = /\/Date\((-?\d+)([+-]\d{2})?(\d{2})?.*/.exec(jsonDate);

    if (parts[2] == undefined) 
      parts[2] = 0;

    if (parts[3] == undefined) 
      parts[3] = 0;

    return new Date(+parts[1] + offset + parts[2]*3600000 + parts[3]*60000);
};

答案 2 :(得分:0)

这不是一个完整的答案,但我把它作为你应该经历的那种思考的一个例子。

它显示的错误是它抛出错误的代码行。据推测它是在图书馆或其他东西。显然它扔了,因为变量date预计是一个数字但不是。根据其名称和预期类型(数字)判断,date必须是Date的构造函数的参数,并且此部分在new Date的调用内运行。结论:脚本失败,因为parseInt没有返回数字。要调查此问题:单击Firebug中的错误行以打开失败的部分,在那里设置断点,再次运行它,然后通过单击Firefox窗口顶部的选项卡浏览调用堆栈。