1、业务背景:
给一个数组,判断时间是否有交叉。
2、代码:
不多说了,直接撸代码
var list = [
{
"start": "2020-12-01",
"end": "2020-12-07"
},
{
"start": "2020-12-02",
"end": "2020-12-08"
},
{
"start": "2020-12-15",
"end": "2020-12-21"
}
]
function from_list_get_time_ms(list) {
return list.map((item,index)=>{
return new Date(item['start']).getTime()
})
}
function is_time_coss(list_time_ms) {
let len_list = list_time_ms.length
return list_time_ms.map((item,index)=>{
if (index < len_list){
if (list_time_ms[index+1] - item <= 1000*3600*24*6){
return false
}
else {
return true
}
}else{
return true
}
})
}
var list_time_ms = from_list_get_time_ms(list);
var list_time_ms_sort = list_time_ms.sort();
is_time_coss(list_time_ms_sort)
console.log("is_coss",is_time_coss(list_time_ms_sort))