【问题标题】:How to convert one time format to another in javascript using moment.tz?如何使用moment.tz在javascript中将一种时间格式转换为另一种时间格式?
【发布时间】:2022-01-10 05:27:46
【问题描述】:

我尝试了各种方法,但无法使用 moment.tz 在 JavaScript 中将日期(如 1640638800)转换为 2022-11-27 16:00:00 America/New_York 时区格式。

我当前的代码是这样的

import * as moment from 'moment';
var date= new Date(0);
date.setUTCSeconds(1640638800);
moment.tz(date.getFullYear()+"-"+date.getMonth()+"-"+date.getDay() + " 10:00:00", "America/New_York");

【问题讨论】:

  • 您确定希望输出为 2022-11-27 16:00:00?这看起来像是 2021 年 12 月的日期

标签: javascript node.js datetime momentjs


【解决方案1】:
import moment from 'moment-timezone'

// Unix Timestamp (milliseconds)
const ts = 1640638800 * 1000 

// Parse as timezoned moment
const m = moment.tz(ts, "America/New_York")

// Format moment to string
const formatted = m.format('YYYY-MM-DD HH:mm:ss')

console.log(formatted) // '2021-12-27 16:00:00'

【讨论】:

  • 虽然这段代码 sn-p 可以解决问题,但它没有解释为什么或如何回答这个问题。请include an explanation for your code,因为这确实有助于提高您的帖子质量。请记住,您是在为将来的读者回答问题,而这些人可能不知道您提出代码建议的原因。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多