1. 程式人生 > >JS 陣列去重,對比兩個陣列之間有相同的值或物件就刪除

JS 陣列去重,對比兩個陣列之間有相同的值或物件就刪除

建立了兩個陣列,並且封裝了一個函式以供呼叫。

  
var arr1 = [a,b,c,d],arr2 = [a,c,d,f];
this.arrayWeightRemoval(arr1,arr2);
//返回結果 [b,f] ;

// 資料去重
  this.arrayWeightRemoval = function (array1, array2){

    //臨時陣列存放
    var tempArray1 = [];//臨時陣列1
    var tempArray2 = [];//臨時陣列2

    for (var i = 0; i < array2.length; i++) {
      tempArray1[array2[i]] = true;//將數array2 中的元素值作為tempArray1 中的鍵,值為true;
    }

    for (var i = 0; i < array1.length; i++) {
      if (!tempArray1[array1[i]]) {
        tempArray2.push(array1[i]);//過濾array1 中與array2 相同的元素;
      }
    }
    return tempArray2;
  }