Momentjs - 从用户时间设置区域设置

时间:2016-11-24 04:38:31

标签: javascript jquery momentjs

我想通过查看浏览器或时间戳等来根据用户所在国家/地区设置moment.locale。 不知道如何实现这一目标。

目前我正在实现这样的目标 -

const userLocale = 'ja';
moment.locale(userLocale); 

任何想法都很棒的人?

2 个答案:

答案 0 :(得分:0)

您可以使用moment-timezone

但是,JavaScript中的日期始终默认为用户的本地时区。所以这听起来像是一个默认解决的问题。例如,通过运行下面的代码段,我会看到当地时间,即GMT-0500。如果你在另一个时区,你会看到不同的东西。

但是,如果您想将本地时间戳从用户设置或类似时间转换为特定时区,则时刻时区是最简单的方法。

document.getElementById("date").innerHTML = new Date();
<div id="date"></div>

答案 1 :(得分:0)

您可以通过

获取浏览器的区域设置
undefined

并使用该区域设置来设置Moment的区域设置

var locale = window.navigator.userLanguage || window.navigator.language; 

如果在获取浏览器的区域设置时出现问题,请尝试

moment.locale(locale);

希望有所帮助:)