2

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

不过,我刚刚意识到标准的 Javascriptparse()方法被它覆盖了。

我正在尝试在 Highcharts 中构建折线图,并且数据系列希望第一个元素以毫秒为单位(他们的演示向他们展示了使用该Date.UTC()方法来实现这一点,但我的数据以不同的格式返回)。

除了做一堆字符串操作来将我的数据转换成Date.UTC可以识别的格式之外,还有另一种方法可以在加载时获得标准的 Javascriptparse()功能吗?date.js

4

4 回答 4

7

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

如果您想要一个不修改本机Date对象的功能齐全的日期库,我编写了一个名为 Moment.js 的库。

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

https://github.com/timrwood/moment

于 2011-10-28T20:25:30.603 回答
1

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

于 2011-10-28T19:40:24.437 回答
1

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

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

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

于 2011-10-28T19:43:00.687 回答
0

在我提出问题后,我继续这样做:

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

但现在将尝试您的建议。

于 2014-09-19T13:03:23.597 回答