使用moment.js解析时如何忽略时区

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用moment.js解析时如何忽略时区相关的知识,希望对你有一定的参考价值。

我需要从js Date对象读取日期,就像它在UTC中一样,但是该对象包含时区。

如何在具有某些时区数据的情况下如何创建moment对象,就像在UTC中一样?

答案

您可以使用moment.js的UTC模式

UTC

默认情况下,时刻会解析并以当地时间显示。如果要解析或以UTC显示时刻,则可以使用moment.utc()代替moment()

var date = new Date().toLocaleString("en-US", {timeZone: "America/New_York"})
var now = moment().format('MMM DD h:mm A');
var nowUTC = moment.utc().format('MMM DD h:mm A');
console.log(now);
console.log(nowUTC);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>
另一答案
  1. 您可以使用moment.utc().进行此操作>

    moment([2011, 10, 8, 5]).format(); 
    
    moment.utc([2011, 10, 8, 5]).format(); 
    
  2. 如果要完全忽略时区,可以使用此代码。

  3.   var firstDayStr = '29 January 2014';
      var startAtTime = '10:01:02 AM';
      var localFormat = 'YYYY-MM-DD[T]HH:mm:ss';
      var m = moment(firstDayStr + ' ' + startAtTime).format(localFormat);
    

以上是关于使用moment.js解析时如何忽略时区的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Moment.js 日期转换为用户本地时区?

moment.js 是单例吗?

Moment.js - 显示选定范围内关于用户时区的历史数据

Moment.js:moment(string,format)源码解析

Moment.js:moment(string,format)源码解析

如何在 node.js 中设置默认时区?