要判断红框的区间是否重叠
var arr = [{
start:7,
end:18
},{
start:1,
end:18
},{
start:2,
end:18
},{
start:4,
end:18
}]
假设要求判断此数组是否有重叠部分
function judgement(arr){
for (var i = 0; i < arr.length-1; i++) {
const str = arr[i].end - arr[i].start
const str2 = arr[i+1].end - arr[i+1].start
if(Number(arr[i].start)+str2>(arr[i+1].end-str)){
console.log('存在交集')
}
}
}
结果
成功判断,嘿嘿,小小功能欢迎各位大佬进行指导