数组的filter与includes方法
题目:编写函数 array_diff(a,b),传入两个数组a,b,将数组a中包含b的值全部去掉,重复的也去掉,返回去掉之后新数组
function array_diff(a, b) {
return a.filter(e => !b.includes(e));
}
ex:
array_diff([1,2,3,3,4],[3]) => [1, 2, 4]
1、filter()
filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
注意: filter() 不会对空数组进行检测。
注意: filter() 不会改变原始数组。
过滤: 选取原数组中符合条件的元素组成新数组
var subArr=arr.filter(function(val,i,arr){
return 条件; //所有返回true的元素,被复制到新数组
})
2、includes()
includes() 方法用来判断一个数组是否包含一个指定的值,如果是,酌情返回 true或 false。
let a = [1, 2, 3];
a.includes(2);
// true
a.includes(4);
// false