日期数组实现

有一个日期数组['2012-01'], 然后向后推一年,变成 [ '2012-02', ..., '2013-01' ], 有没有什么好的实现方式,总觉得有很好的算法,但是想不出来,求大神指点

阅读 1.9k
2 个回答
let arr = ['2012-01'];
let [year, month] = arr[0].split('-');
let result = new Array(12).fill(0).map(() => {
  month = +month + 1;
  if (month > 12) {
    month = 1;
    year = +year + 1;
  }
  return `${year}-${month < 10 ? '0' : ''}${month}`;
});

console.log(result);

严谨一点可能会借助Date 但我觉得这种简单转换可以直接这样写

日期格式是固定的么?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题