ES5时的做法
假设现有array_one与array_two两个数组
const array_one=[0,1,2,3,4,5,6]
const array_two=[0,3,6,7,8,9]
现在需要对两个数组进行元素比较并返回新的数组,以往都是这么做的
//返回相同元素
var array_new=[];
for(var i=0;i<array_one.length;i++){
//判等因子
var hasSame=false;
for(var u=0;u<array_tow.length;u++){
if(array_one[i]==array_tow[u]){
hasSame=true
}
}
if(hasSame){
array_new.push(array_one[i])
}
}
ES6时的做法
const array_new=array_one.filter(item=>array_two.some(ele=>ele==item))
一行解决,极大减少冗长的代码体积。