使用节点js从时区获取时间

时间:2016-03-09 11:02:24

标签: javascript node.js datetime

我需要使用节点js从时区打印实际时间。我使用时刻时区来查找时区的时间。

这是我的代码

var moment = require('moment-timezone');

console.log(moment().tz("UTC+05:30").format());
console.log(moment().tz("UTC+05").format());
console.log(moment().tz("UTC−04:30").format());
console.log(moment().tz("UTC+08").format());
console.log(moment().tz("UTC+06").format());

但我得到了这样的结果

Moment Timezone has no data for UTC+05:30. See http://momentjs.com/timezone/docs/#/data-loading/.
2016-03-09T16:31:10+05:30
Moment Timezone has no data for UTC+05. See http://momentjs.com/timezone/docs/#/data-loading/.
2016-03-09T16:31:10+05:30
Moment Timezone has no data for UTC−04:30. See http://momentjs.com/timezone/docs/#/data-loading/.
2016-03-09T16:31:10+05:30
Moment Timezone has no data for UTC+08. See http://momentjs.com/timezone/docs/#/data-loading/.
2016-03-09T16:31:10+05:30
Moment Timezone has no data for UTC+06. See http://momentjs.com/timezone/docs/#/data-loading/.
2016-03-09T16:31:10+05:30

如何解决这个问题?

2 个答案:

答案 0 :(得分:4)

如文档中所示,moment.tz([string])期望[string]采用'Country/City'格式,并且不接受UTC+XX格式。

在格式化之前使用moment().utcOffset([string])应用UTC偏移。

答案 1 :(得分:0)

根据您的问题,您可以使用:

moment().utcOffset(520).format() // for UTC+5:30