Nodejs使用自定义时区和UTC将时间戳字符串转换为日期



假设我将值'2014-03-03 16:20:20'作为输入,我想转换它到了时区的实时时间(即节点位于欧洲,但时间戳是在美国收集的),然后我想获得真正价值的UTC代表。

知道哪些软件包可以提供帮助?尝试的瞬间。

终于找到了momentjs-timezone

的答案

这有点有趣,因为您不会在Mainsite上获得一个暗示http://momentjs.com/timezone/,但您可以在http://github.com/moment/moment/moment timezone

无论如何,这是您的做法:

var tz0 = moment.tz("2014-03-03 16:20:20", "Asia/Jerusalem")
var tz1 = moment.utc(tz0);

console.log(tz0.format('YYYY-MM-DD hh:mm:ss'));
console.log(tz1.format('YYYY-MM-DD hh:mm:ss'));

和输出,您可以看到各种各样的

2014-03-03 04:20:20
2014-03-03 02:20:20
// moment.js
var utc = moment('2014-03-03 16:20:20','YYYY-MM-DD HH:mm:ss', 'us');
// or timezone string pass from client
var eu = utc.zone("+02:00");
var eu = utc.zone("-02:00");

Momentjs可能会为您提供帮助。喜欢以下内容:

  1. 您可以使用ISO日期加上时区信息的输入格式化,例如2014-03-03T16:20:20-05:00(假设您是从GMT-5 TimeZone的当地时间获得的)
  2. 然后致电: MOMM.PARSEZONE('2014-03-03t16:20:20-05:00')。区域(1).format(Format()在GMT 1个时区)

希望有帮助,罗恩

时区是一个优雅的模块。

var tz = require("timezone/loaded");
var formattedDate = tz(unformattedTimestamp, '%d %B %Y, %-I:%M %p', "Europe/Amsterdam");

您可以使用Bootstraphelper捕获用户的时区。

相关内容

  • 没有找到相关文章

最新更新