数组的filter与includes方法

时间:2022-03-06 02:15:49

题目:编写函数 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