0

我已使用以下代码转换JSON DateOriginal 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");

任何帮助...

4

3 回答 3

0

日期解析的工作方式如下:

 var dateObject = new Date("12-15-2012 01:23");
于 2013-07-18T07:33:58.887 回答
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);
};
于 2013-07-18T07:37:24.693 回答
0

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

它显示的错误是它引发错误的代码行。大概是在图书馆什么的。显然它抛出,因为变量date应该是一个数字,但不是。从它的名称和预期类型(数字)来看,它date必须是构造函数的参数Date,并且这部分是在对 的调用中运行的new Date。结论:脚本失败是因为 parseInt 没有返回数字。要对此进行调查:单击 Firebug 中的错误行以打开失败的部分,在此处设置断点,再次运行它,然后通过单击 Firefox 窗口顶部的选项卡浏览调用堆栈。

于 2013-07-18T07:55:43.573 回答