如何在oment.js中设置解析的区域设置?

发布时间:2022-06-28 / 作者:清心寡欲
本文介绍了如何在oment.js中设置解析的区域设置?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

遗憾的是,我在文档中找不到答案,因此...

例如,我输入的日期是:"09/01/2017"。我不知道,它是DD/MM/YYYY或MM/DD/YYYY,但我知道用户区域设置。我能买到下面这样的东西吗?

let date   = "09/01/2017",
    locale = "en_US",// or "en_AU"
    result = moment(date, locale).format("DD MMM YYYY");
// 01 Sep 2017
// 09 Jan 2017

或者我是否需要写一张地图,然后将格式设置为Moment?

let map =
    {
        en_US: 'DD/MM/YYYY',
        en_AU: 'MM/DD/YYYY',
        // ...
    },
    date   = "09/01/2017",
    locale = "en_US",// or "en_AU"
    result = moment(date, map[locale]).format("DD MMM YYYY");
// 01 Sep 2017
// 09 Jan 2017

谢谢

推荐答案

您可以使用moment.localeData()longDateFormat('L')获取区域设置特定的标记。

这里是一个活的样本:

数据-lang="js"数据-隐藏="假"数据-控制台="真"数据-巴贝尔="假">
let date   = "09/01/2017";
let locale = "en_US";
let localeFormat =  moment.localeData(locale).longDateFormat('L');
let result = moment(date, localeFormat).format("DD MMM YYYY");
console.log(result); // 01 Sep 2017

locale = "en_AU";
localeFormat =  moment.localeData(locale).longDateFormat('L');
result = moment(date, localeFormat).format("DD MMM YYYY");
console.log(result); // 09 Jan 2017

这篇关于如何在oment.js中设置解析的区域设置?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持吉威生活!



[英文标题]How to set locale for parsing in moment.js?


声明:本媒体部分图片、文章来源于网络,版权归原作者所有,如有侵权,请联系QQ:330946442删除。