js中[[t1, t2], [t3,t4], [t5,t6]]中t1~t2,t3~t4,t5~t6表示不同的时间范围,怎么用一个函数将这些范围合并
时间: 2023-12-02 19:05:45 浏览: 131
充电温度范围-l9110s电机驱动芯片手册
可以使用以下函数将这些时间范围合并:
```javascript
function mergeTimeRanges(timeRanges) {
// 先按照时间范围的开始时间排序
timeRanges.sort((a, b) => a[0] - b[0]);
const mergedRanges = [];
let currentRange = timeRanges[0];
// 遍历所有时间范围,合并重叠的范围
for (let i = 1; i < timeRanges.length; i++) {
const range = timeRanges[i];
if (range[0] <= currentRange[1]) {
// 有重叠,更新当前范围的结束时间
currentRange[1] = Math.max(currentRange[1], range[1]);
} else {
// 没有重叠,将当前范围加入结果数组,并更新当前范围
mergedRanges.push(currentRange);
currentRange = range;
}
}
// 加入最后一个范围
mergedRanges.push(currentRange);
return mergedRanges;
}
```
使用方法:
```javascript
const timeRanges = [[t1, t2], [t3, t4], [t5, t6]];
const mergedRanges = mergeTimeRanges(timeRanges);
console.log(mergedRanges);
```
输出结果为合并后的时间范围数组。
阅读全文