两个数组中相同元素取出来
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 []
},
推荐阅读
- javascript|基于jquery扩展漂亮的单选按钮——RadioButton
- js数组常用方法总结(二)map&forEach
- vue性能优化|vue功能之“loading加载优化“
- vue|实现文本内容是超链接时自动转换为超链接
- webpack|webpack插件篇
- JavaScript中一些不常见的运算符号(三分钟看完)
- Web3D 从入门到跑路 · 3D 初体验
- 不懂物理的前端不是好的游戏开发者(二)—— 物理引擎的学习之路
- 源码|第13期在线音乐网站前后分离springboot整合vue