数组的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

原文地址:https://www.cnblogs.com/fqh123/p/10063834.html