如何从moment对象获取时区偏移量?

24

我有一个定义如下的moment对象:

var moment = require('moment');

moment('2015-12-20T12:00:00+02:00');

打印时我得到了:

_d: Sun Dec 20 2015 12:00:00 GMT+0200 (EET)
_f: "YYYY-MM-DDTHH:mm:ssZ"
_i: "2015-12-20T12:00:00+02:00"
_isAMomentObject: true
_isUTC: false
_locale: r
_pf: Object
_tzm: 120

如何正确地通过_tzm进行获取?(假设其为分钟的偏移量)

谢谢。


7
这段代码的意思是获取当前时区相对于UTC时间的偏移量。 - Mike Kor
2
moment.tz.guess(); 用于最新构建。 - valar morghulis
1个回答

35

只需像在任何对象中一样访问属性

var result = moment('2015-12-20T12:00:00+02:00');


document.body.innerHTML = result._tzm;
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.11.1/moment.min.js"></script>

另一个选项是解析日期并获取时区。

moment.parseZone('2015-12-20T12:00:00+02:00').utcOffset(); // 120
// or
moment().utcOffset('2015-12-20T12:00:00+02:00')._offset; // 120

7
如果你需要角度date管道的偏移量,可以使用momentObject.format('Z'),其返回值例如为-08:00。请注意,本翻译中的"angular"指的是一个前端框架,而非角度的意思。 - Nuryagdy Mustapayev

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接