数组合并去重

Set去重

const arr1 = [1, 2, 3];
const arr2 = [3, 4, 5];

console.log(new Set([...arr1, ...arr2]));

for循环,indexOf判断是否存在

const arr1 = [1, 2, 3];
const arr2 = [3, 4, 5];

function mergeArray(arr1, arr2) {
  // 克隆
  const cloneArr1 = arr1.slice(0);
  let v;
  for (let i = 0; i < arr2.length; i++) {
    v = arr2[i];
    // 按位非,反转操作数的位,表象是对后面数字取负减一
    // 当数组中不存在此项 indexOf 返回 -1 按位非得 0 不走 if 逻辑
    // 如果两个数组都包含NaN,想要去重可使用includes
    if (~cloneArr1.indexOf(v)) {
      continue;
    }
    cloneArr1.push(v);
  }
  return cloneArr1;
}

console.log(mergeArray(arr1, arr2));

猜你喜欢

转载自blog.csdn.net/qq_35353972/article/details/128103793
今日推荐