【发布时间】:2019-06-06 15:23:07
【问题描述】:
很遗憾,我没有在文档中找到答案,所以...
例如,我输入了日期:“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
或者我需要写一张地图然后设置格式吗?
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
谢谢
【问题讨论】:
-
"…但我知道用户区域设置"。用户所在的位置并不是他们可能使用的日期格式的可靠指标。
-
"en–AU" 不是语言环境,而是语言标签。它与一个人的位置(即他们的语言环境)没有任何关系。我真的无法理解这种用词不当(似乎源自 ECMA-402)是如何持续存在的,或者为什么聪明的人会传播它。
-
在我的任务上下文中,这个标签表示数据的格式,所以可以
标签: javascript date momentjs