📌  相关文章
📜  查找出现在第一个数组中而不出现在第二个数组中的元素(1)

📅  最后修改于: 2023-12-03 14:55:33.022000             🧑  作者: Mango

查找出现在第一个数组中而不出现在第二个数组中的元素

在编程中,我们经常需要对数组进行操作。有时候,我们需要查找出现在第一个数组中而不出现在第二个数组中的元素。这个问题可以通过以下几个步骤来解决:

  1. 遍历第一个数组,将其中的元素保存到一个新的数组中;
  2. 遍历第二个数组,对于其中的每一个元素,判断是否出现在第一个数组中;
  3. 如果出现在第一个数组中,则将新的数组中对应位置的值设为 null;
  4. 最后,遍历新的数组,把所有不为 null 的值返回。

下面是一个 JavaScript 实现的例子:

function diffArray(arr1, arr2) {
  // 创建一个新的数组,保存 arr1 中的元素
  let newArr = arr1.slice();

  // 遍历 arr2,找出其中在 newArr 中出现的元素,并将 newArr 中对应位置的值设为 null
  for(let i = 0; i < arr2.length; i++) {
    let index = newArr.indexOf(arr2[i]);
    if(index !== -1) {
      newArr[index] = null;
    }
  }

  // 最后,遍历 newArr,把所有不为 null 的值返回
  return newArr.filter(item => item !== null);
}

// 示例用法
let arr1 = [1, 2, 3, 4, 5];
let arr2 = [2, 4, 6];
let diff = diffArray(arr1, arr2);
console.log(diff);  // [1, 3, 5]

以上就是本文介绍的查找出现在第一个数组中而不出现在第二个数组中的元素的方法。希望能对你有所帮助。