欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

找出给定时间段范围内的所有月份

程序员文章站 2022-06-07 11:52:15
...

(网上找了好几个,发现都是复制抄袭的,还没什么用,自己写了个)
话不多说,直接附代码:

function getMonthAll(startTime, endTime) { // startTime 和 endTime 格式为任意格式
  const len = (Number(endTime) - Number(startTime)) / (24 * 60 * 60 * 1000)
  const day = new Date(Number(startTime) + 24 * 60 * 60 * 1000);
  let month = new Date(Number(startTime) + 24 * 60 * 60 * 1000).getMonth();
  const res = [];
  res.push(`${day.getFullYear()}-${month + 1}`);
  for (let i = 0; i < len; i++) {
    const dayNew = new Date(Number(startTime) + i * 24 * 60 * 60 * 1000);
    const monthNew = new Date(Number(startTime) + i * 24 * 60 * 60 * 1000).getMonth();
    if (monthNew !== month) {
      res.push(`${dayNew.getFullYear()}-${monthNew + 1}`);
      month = monthNew;
    }
  }
  return res;
}