根据两个日期获取范围内所有日期和想要的时间段

// 两个日期中间的日期范围
export const rangeDay = (day1, day2) => {
  const result = [] as any;
  const dayTimes = 24 * 60 * 60 * 1000;
  const startTime = day1.getTime();
  const range = day2.getTime() - startTime;
  let total = 0;

  while (total <= range && range > 0) {
    result.push(new Date(startTime + total).toLocaleDateString().replace(/\//g, '-'));
    total += dayTimes;
  }
  return result;
};

范围时间段(传入参数格式9:00-18:00)

根据自己需求修改想要的时间段

// 两个时间中间的时间段
export const rangeTime = (time1, time2) => {
  const tempTemp1 = time1.split(':');
  const tempTemp2 = time2.split(':');
  const hours = [] as any;
  for (let k = Number(tempTemp1[0]); k <= Number(tempTemp2[0]); k++) {
    hours.push(k);
  }
  let timeRanges = [] as any;
  if (tempTemp1[1] == '00') {
    timeRanges = hours.map((item) => {
      const item1 = item + 1;
      return `${item}:00-${item1}:00`;
    });
    timeRanges.splice(-1);
  } else if (tempTemp1[1] == '30') {
    timeRanges = hours.map((item) => {
      const item1 = item + 1;
      return `${item}:30-${item1}:30`;
    });
  }

  return timeRanges;
};

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值