使用js语法,起始时间fetchStartTime到结束时间fetchEndTime每间隔fetchInterval分钟为一个时间段, 时间段的格式例如:8:00~10:00,格式为HH:mm,输出全部时间段
时间: 2024-05-16 07:13:55 浏览: 50
可以使用以下代码实现:
```javascript
const fetchStartTime = "8:00"; // 起始时间
const fetchEndTime = "18:00"; // 结束时间
const fetchInterval = 30; // 间隔时间,单位为分钟
// 将时间转换为分钟数
function toMinutes(time) {
const [hour, minute] = time.split(":");
return parseInt(hour) * 60 + parseInt(minute);
}
// 将分钟数转换为时间格式
function toTime(minutes) {
const hour = Math.floor(minutes / 60);
const minute = minutes % 60;
return `${hour.toString().padStart(2, "0")}:${minute.toString().padStart(2, "0")}`;
}
// 生成时间段数组
const timeRanges = [];
let currentMinutes = toMinutes(fetchStartTime);
const endMinutes = toMinutes(fetchEndTime);
while (currentMinutes < endMinutes) {
const startTime = toTime(currentMinutes);
currentMinutes += fetchInterval;
const endTime = toTime(Math.min(currentMinutes, endMinutes));
timeRanges.push(`${startTime}~${endTime}`);
}
// 输出全部时间段
console.log(timeRanges);
```
输出结果如下:
```
[
'08:00~08:30',
'08:30~09:00',
'09:00~09:30',
'09:30~10:00',
'10:00~10:30',
'10:30~11:00',
'11:00~11:30',
'11:30~12:00',
'12:00~12:30',
'12:30~13:00',
'13:00~13:30',
'13:30~14:00',
'14:00~14:30',
'14:30~15:00',
'15:00~15:30',
'15:30~16:00',
'16:00~16:30',
'16:30~17:00',
'17:00~17:30',
'17:30~18:00'
]
```
阅读全文