JavaScript-使用数组过滤数组

我们需要编写一个包含两个文字数组的JavaScript函数。我们的函数应返回第一个数组的过滤版本,该版本包含该数组中存在的所有那些元素,但不包含第二个数组。

我们将使用Array.prototype.filter()函数,并使用Array.prototype.includes()方法检查第二个数组中的元素。

示例

为此的代码将是-

const arr1 = [1,2,3,4,5];
const arr2 = [1,3,5];
const filterUnwanted = (arr1 = [], arr2 = []) => {
   let filtered = [];
   filtered = arr1.filter(el => {
      const index = arr2.indexOf(el);
      //索引-1表示第二个数组中不存在元素
      return index === -1;
   });
   return filtered;
};
console.log(filterUnwanted(arr1, arr2));

输出结果

控制台中的输出将是-

[2, 4]