js判断一些时间范围是否有重复时间段

时间:2021-02-17 03:35:27
function isHasRepeatTime(data) {
var startTimeArr = [];
var endTimeArr = [];
(data || []).map(function(item) {
startTimeArr.push(item.StartTime);
endTimeArr.push(item.EndTime);
});
var allStartTime = startTimeArr.sort();
var allEndTime = endTimeArr.sort();
var result = 0;
for(var k=1;k<allStartTime.length;k++){
if (allStartTime[k] <= allEndTime[k-1]){
result+=1;
}
}
return result>0;
}

注: 返回true则这段时间范围有重叠部分,返回false则没有重叠。