javascript - 时刻.js : Format date according browser lang

标签 javascript momentjs

我使用此代码以法语格式显示日期:

var dateToDisplay = moment(myDateInMS, "x").format("DD/MM/YYYY - hh:mm:ss"); // Output : "20/03/2016 - 12:35:32"

我想根据浏览器语言改进此显示以获得更好的显示。我怎样才能使用 moment 做到这一点?

最佳答案

我不建议根据浏览器语言设置区域设置,因为它不是用户实际区域设置的明确信号。例如。用户可能会使用英语操作系统,即使他/她是法语使用者。

话虽这么说。从浏览器读取语言并将 Moment.js 设置为相应的语言环境可以这样完成:

var localeData = moment.localeData();

switch (navigator.language || navigator.userLanguage) {
    case 'fr':
        localeData = moment.localeData('fr');
        break;
}

localeData.longDateFormat('LL'); // the example 'LL' will output date in "D MMMM YYYY format"

请注意,这是设置整个 Moment.js 实例的区域设置(这可能是您想要做的)。另请注意,从 Moment.js 2.8.0 开始,更改全局语言环境不会影响现有实例。

另见

关于javascript - 时刻.js : Format date according browser lang,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36355399/

相关文章:

javascript - 主干网获取相关模型

javascript - Canvas 的绘图线

javascript - 无法将 unicode 标志添加到正则表达式以进行电子邮件检查

javascript - 如何在 meanjs 中获取基本 url?

javascript - Moment JS - isAfter 返回 .isAfter 不是一个函数?

javascript - 如何在 Azure 存储表中插入数字列?

javascript - 将对象数组拆分为 2 小时跨度组

javascript - MomentJs 获得年 - 没有区别

javascript - 使用 moment.js 将天数添加到区域设置特定日期

javascript - Moment JS fromnow() 输出速记