两个数组拿相同元素,数组去重,两个日期区间段合并

两个数组中相同元素取出来

getArrEqual(arr1, arr2) { let newArr = [] for (let i = 0; i < arr2.length; i++) { for (let j = 0; j < arr1.length; j++) { if (arr1[j] === arr2[i]) { newArr.push(arr1[j]) } } } return newArr },

数组去重
unique(arr) { //初始化时,使新数组的第一个元素为原数组的第一个元素 let newArr = [arr[0]] //遍历原数组 for (let i = 1; i < arr.length; i++) { let flag = false //遍历新数组 for (let j = 0; j < newArr.length; j++) { //判断新数组当中是否含有与原数组相同的元素,如果有则跳过 //如果没有,则将原数组中的元素放入新数组里即可 if (arr[i] === newArr[j]) { flag = true break } } if (!flag) { newArr.push(arr[i]) } }return newArr },

【两个数组拿相同元素,数组去重,两个日期区间段合并】两个日期区间合并
isDateIntersection(start1, end1, start2, end2) { var startdate1 = new Date(start1.replace('-', '/').replace('-', '/')) var enddate1 = new Date(end1.replace('-', '/').replace('-', '/'))var startdate2 = new Date(start2.replace('-', '/').replace('-', '/')) var enddate2 = new Date(end2.replace('-', '/').replace('-', '/'))if (startdate1 >= startdate2 && startdate1 <= enddate2) { //startdate1介于另一个区间之间 return [start1, enddate1 > enddate2 ? end2 : end1] }if (enddate1 >= startdate2 && enddate1 <= enddate2) { //enddate1介于另一个区间之间 return [startdate1 <= startdate2 ? start2 : start1, end1] }if (startdate1 <= startdate2 && enddate1 >= enddate2) { //startdate1-enddate1的区间大于另一个区间,且另一个区间在startdate1-enddate1之间 return [start2, end2] }return [] },

    推荐阅读