js判断一些时间范围是否有重复时间段
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则没有重叠。