【问题标题】:NodeJs How to use moment-timezone to convert Epoch to Specific TImezone and formatNodeJs 如何使用 moment-timezone 将 Epoch 转换为特定的 TImezone 和格式
【发布时间】:2019-09-05 00:22:35
【问题描述】:

我有一个用例,我想将 Epoch 整数值转换为特定时区时间和特定格式,
另外,我想将人类可读的日期时间转换为纪元。

我正在尝试使用moment-tz 进行时区转换。

我在马来西亚吉隆坡使用特定的纪元时间戳1555296000,即 -
Monday, April 15, 2019 10:40:00 AM
我能够将Asia/Kuala_Lumpur 时区的2019-04-15 10:40:00 转换为正确的Unix。

但我无法将 1555296000 转换为另一个时区的 unix,
即我希望将1555296000 转换为等效的YYYY-MM-DD hh:mm:ss Asia/Calcutta 时区。

以下是我正在尝试使用的代码 -

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

    console.log("Convert from Asia/Kuala_Lumpur to Unix -> ", moment.tz("2019-04-15 10:40:00","Asia/Kuala_Lumpur").unix());
// Outputs - 1555296000

console.log("Epoch to Specific TimeZone and Format -> ",moment(1555296000).tz("Asia/Calcutta").format('YYYY-MM-DD hh:mm:ss'));
// Outputs - 1970-01-19 05:31:36
// I want  - 2019-04-15 08:10:00

【问题讨论】:

    标签: node.js datetime timezone momentjs


    【解决方案1】:

    试试这个

    const moment = require("moment-timezone");
    
    console.log(
      moment
        .unix(1555296000)
        .tz("Asia/Calcutta")
        .format("YYYY-MM-DD HH:mm:ss")
    );
    

    2019-04-15 08:10:00 - “Asia/Calcutta”2019-04-15 10:40:00 - “Asia/Kuala_Lumpur”

    【讨论】:

    • HH。不是hh
    • @MattJohnson 是的,错过了。 hh 是 12 小时,HH 是 24 小时。谢谢你的收获。
    猜你喜欢
    • 2014-11-25
    • 1970-01-01
    • 1970-01-01
    • 2016-07-17
    • 1970-01-01
    • 2014-05-22
    • 2018-12-18
    • 2017-01-20
    • 1970-01-01
    相关资源
    最近更新 更多