date.js Parse方法覆盖Javascript Parse方法

时间:2011-10-28 19:37:54

标签: javascript date datejs

我在我的网站中包含date.js库,因为我需要它的功能。

我刚刚意识到标准的Javascript parse()方法被它覆盖了。

我正在尝试在Highcharts中构建折线图,数据系列希望第一个元素以毫秒为单位(他们的演示使用Date.UTC()方法显示它们以实现此目的,但我的数据被返回以不同的格式)。

如果没有进行大量字符串操作以将我的数据转换为Date.UTC将识别的格式,那么在加载parse()时是否有另一种获取标准Javascript date.js功能的方法?

4 个答案:

答案 0 :(得分:7)

我知道这不是您问题的直接解决方案,但无论如何它可能会有所帮助。

如果你想要一个没有修改本地Date对象的全功能日期库,我写了一个名为Moment.js的文件。

它提供了DateJS提供的许多功能(格式化,解析,操作,timeago,i18n等),但它更小,更快,并且不会破坏原生日期原型。

https://github.com/timrwood/moment

答案 1 :(得分:1)

不,这是date.js的预期设计。它添加了Date对象的“原型”。有些人讨厌这样,有些人喜欢它 - 但你已经发现了这种设计的一个缺点。

答案 2 :(得分:1)

您可以告诉Highcharts不使用UTC日期:

Highcharts.setOptions({
    global: {
        useUTC: false
    }
});

您应该在创建图表之前执行此操作。然后,您不必担心将日期转换为UTC,这将更容易。

答案 3 :(得分:0)

在我问了这个问题之后,我继续这样做了:

d = Date.parse(data);
            y = d.getFullYear();
            m = d.getMonth();
            d = d.getDate();
            dUTC = Date.UTC(y, m, d);

但现在会尝试你的建议。