如何检索当前时刻的默认时区
How to retrieve current moment default time zone
如果我使用 moment.tz.setDefault()
设置默认时刻时区,有没有办法稍后检索当前默认时区?
示例:
const moment = require('moment-timezone');
moment.tz.setDefault('Asia/Tokyo');
console.log(moment.tz.getDefault()); // TypeError: moment.tz.getDefault is not a function
console.log(moment.tz.default); // undefined
console.log(moment.tz.guess()); // America/New_York (my local timezone)
console.log(moment.tz.guess(true)); // America/New_York
// => I want something that will return "Asia/Tokyo"
这与建议的副本不同,因为我不想要 浏览器的 时区,我特别想知道 moment.tz.setDefault()
设置了什么(如果有的话)到.
你可以通过 moment.defaultZone.name
:
const moment = require('moment-timezone');
moment.tz.setDefault('Asia/Tokyo');
console.log(moment.defaultZone.name)
输出:
Asia/Tokyo
@Kip评论后更新
- 如果没有设置默认时区,
moment.defaultZone
是未定义的,所以使用moment.defaultZone?.name
是安全的。
- 其他使用记录功能的方法是
moment().format('ZZ')
,在东京时间 returns "+0900"
。
如果我使用 moment.tz.setDefault()
设置默认时刻时区,有没有办法稍后检索当前默认时区?
示例:
const moment = require('moment-timezone');
moment.tz.setDefault('Asia/Tokyo');
console.log(moment.tz.getDefault()); // TypeError: moment.tz.getDefault is not a function
console.log(moment.tz.default); // undefined
console.log(moment.tz.guess()); // America/New_York (my local timezone)
console.log(moment.tz.guess(true)); // America/New_York
// => I want something that will return "Asia/Tokyo"
这与建议的副本不同,因为我不想要 浏览器的 时区,我特别想知道 moment.tz.setDefault()
设置了什么(如果有的话)到.
你可以通过 moment.defaultZone.name
:
const moment = require('moment-timezone');
moment.tz.setDefault('Asia/Tokyo');
console.log(moment.defaultZone.name)
输出:
Asia/Tokyo
@Kip评论后更新
- 如果没有设置默认时区,
moment.defaultZone
是未定义的,所以使用moment.defaultZone?.name
是安全的。 - 其他使用记录功能的方法是
moment().format('ZZ')
,在东京时间 returns"+0900"
。