2

我正在使用 Highcharts JS 库,尤其是 Highstock 图表之一:http://www.highcharts.com/stock/demo/compare正在可视化 [Date.UTC(year,月、日、小时、分钟)、值)。

当有人单击特定点时,我想获取与该点对应的日期。但是,Date.UTC() 格式返回指定日期和 1970 年 1 月 1 日午夜之间的毫秒数。

我的问题是:有没有办法将这个数字转换为我可以阅读和理解的日期字符串?例如 convert(1340628120000) 返回 -> 2012, 6 (month), 25(day), 15(hour), 42(minutes) ?

谢谢你。

4

3 回答 3

2

是的,使用dateFormat。HighCharts 文档非常好。

于 2012-08-14T19:19:13.460 回答
1

如果您使用这些毫秒创建 Date 变量,则可以使用 .toLocaleString() 将其转换回可读格式。函数列表在这里

像这样使用它:

var a = new Date(YOUR_UCT_VALUE);
a = a.toLocaleString();

一个示例输出可能是:

2012 年 8 月 14 日星期二 15:24:24 GMT-0400(东部夏令时间)

不知道这是否是你想要的,但内置的 JavaScript Date 有很多好的函数,比如 getHours()、getMinutes() 等。你所要做的就是用你得到的毫秒数创建一个日期对象. 之后,JavaScript 会为您完成所有工作。

于 2012-08-14T19:24:03.203 回答
1
var utcSeconds = 1234567890;
var dateFormat = new Date(0); // The 0 sets the date to the epoch
dateFormat.setUTCSeconds(utcSeconds);

输出:2009 年 2 月 13 日星期五 18:31:30 GMT-0500(东部标准时间)

日期(); 参考

于 2012-08-14T19:28:30.127 回答