如何使用Moment.js构建一个日期数组

时间:2016-12-14 17:18:20

标签: javascript arrays momentjs

使用moment.js,我需要构建一个未来12个月的数组.-从当月开始。例如(假设当前月份= 12月):

var monthsArray = [
  "December",
  "January",
  "February",
  "March",
  [...]
  "November"
  ]

我目前的解决方案仅显示一年中的所有12个月,而不考虑"开始"月

  var count = 0;
  var months = [];
  while (count < 12) months.push(moment().month(count++).format("MMMM"));

我猜用户月份是

_private.userMonth = moment().format('MMMM');

我如何应用它来构建我的数月?

2 个答案:

答案 0 :(得分:1)

在各种其他方法中如何做到这一点。

var months = moment.months();
var coming12Months = months.concat(months.slice(0, moment().month())).slice(-12);

// ["December", "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November"]

这不是一个特别优雅的解决方案,但它是有效的。关于如何正确在JS over here中旋转数组的线程。

答案 1 :(得分:0)

您可以使用即时add功能:

var offset = 0;
var months = [];
while (offset < 12) {
  months.push(moment().add(offset++, 'month').format('MMMM'));
}