我在我的网站中包含date.js
库,因为我需要它的功能。
我刚刚意识到标准的Javascript parse()
方法被它覆盖了。
我正在尝试在Highcharts中构建折线图,数据系列希望第一个元素以毫秒为单位(他们的演示使用Date.UTC()
方法显示它们以实现此目的,但我的数据被返回以不同的格式)。
如果没有进行大量字符串操作以将我的数据转换为Date.UTC
将识别的格式,那么在加载parse()
时是否有另一种获取标准Javascript date.js
功能的方法?
答案 0 :(得分:7)
我知道这不是您问题的直接解决方案,但无论如何它可能会有所帮助。
如果你想要一个没有修改本地Date
对象的全功能日期库,我写了一个名为Moment.js的文件。
它提供了DateJS提供的许多功能(格式化,解析,操作,timeago,i18n等),但它更小,更快,并且不会破坏原生日期原型。
答案 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);
但现在会尝试你的建议。