MomentJS允许提供多种语言,以创建用于格式化和计算的语言环境。

他们specifically mention某些语言使用了两个以上的子午线,并且在语言环境中存在are functions for returning lists of months/days。有什么方法可以返回当前语言环境的子午列表吗?

短短超过24小时的循环,每小时拨打moment.localeData().meridiem(x)然后寻找唯一性,我似乎找不到任何有关它的文档。有没有人找到获取此列表的方法,或者这是我应该在他们的github上要求的吗?

最佳答案

看起来循环是唯一的方法



let fn = moment().locale('zh-cn').localeData().meridiem,
    meridiems = new Set();
for (let hour = 0; hour < 24; hour++) {
  for (let minute = 0; minute < 60; minute++) {
    // get both upper and lower cases
    meridiems.add(fn(hour, minute, true));
    meridiems.add(fn(hour, minute, false));
  }
}
console.log(Array.from(meridiems.values()));

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.15.2/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.15.2/locale/zh-cn.js"></script>

关于javascript - 获取MomentJs中的子午线列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40371348/

10-09 21:42