如何找出时区字符串?

How to find out the timezone string?

this question 中,我发现了有关如何处理不同时区的方法。

这给了我一个很好的例子:

var la = moment().tz("America/Los_Angeles")
var nl = moment().tz("Europe/Amsterdam")

console.log('now:')
console.log(la.format());
console.log(nl.format());

现在这些时区字符串是硬编码的,我怎么可能知道那些特定用户需要哪个时区字符串?

我需要这样的东西:

var timeZone = moment.getCurrentTimeZone();
var someTimeZone = moment().tz(timeZone);

有什么建议吗?

您可以从日期字符串中提取它

function getTimeZone() {
  return /\((.*)\)/.exec(new Date().toString())[1];
}

document.write(getTimeZone()); // Pacific Daylight Time