【问题标题】:Show exact time with GMT JavaScript [duplicate]使用 GMT JavaScript 显示准确时间 [重复]
【发布时间】:2019-11-08 19:44:21
【问题描述】:

给定时间的格式为 ISO_8601 例如:“2019-04-05T13:30-05:00” 例如:“2005-08-09T18:31+03:30” 应该使用提到的 GMT 以可读格式返回准确时间 例如。 2019 年 11 月 30 日星期六晚上 11:00 GMT+1

输入:“2019-04-05T13:30-05:00” 输出:“周五,2019 年 4 月 5 日,格林威治标准时间 5 点下午 1:30”

输入:“2005-08-09T18:31+03:30” 输出:“2005 年 8 月 9 日,星期二,格林威治标准时间 +3 下午 6:31”

【问题讨论】:

  • 第二个例子 GMT+3?不是应该是 GMT+3:30 吗?
  • @Ali 是的。我相信你是对的,应该是“GMT+3:30”
  • how to format a date 上已经有很多问题和很好的答案。尝试一下,如果遇到问题,请发布代码并寻求帮助,而不是仅仅要求某人为您编写代码。
  • @user116313—“应该”的值是多少? ISO 8601 允许 +3、+0300 或 +03:00。 ECMAScript 需要 +03:00。所以 +3:00 是 ISO 8601 或 ECMA-262 唯一支持的格式。

标签: javascript date timezone timezone-offset timestamp-with-timezone


【解决方案1】:

我建议你使用Momentjs,这里有一个简单的sn-p如何使用moment。

function getDateString(inputDate) {
  let date = moment.parseZone(inputDate);

  return date.format('ddd, MMM D, YYYY, h:mm A zZ')
}

console.log(getDateString("2005-08-09T18:31+03:30"));
console.log(getDateString("2019-04-05T13:30-05:00"));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.1/moment.min.js"></script>

【讨论】:

  • 谢谢,实际上,这对我有用 codegetTime (inputDate) { const data = this.$moment.parseZone(inputDate).format('ddd, MMM D, YYYY, h: mm A [GMT]Z') 返回数据}
猜你喜欢
  • 1970-01-01
  • 2016-04-08
  • 1970-01-01
  • 2021-03-15
  • 2020-05-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-05
相关资源
最近更新 更多