JavaScript陣列刪除重複元素

螞蟻小編發表於2018-07-09

本章節分享一段程式碼例項,它實現了刪除陣列中重複元素的功能。

程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
var countArr = [1, 2, 3,4,5,6,2,4];
function unique(arr) {
  var resultArr = [],
      hash = {};
  for (var index = 0, elem;(elem = arr[index]) != null; index++) {
    if (!hash[elem]) {
      resultArr.push(elem);
      hash[elem] = true;
    };
  };
  return resultArr;
}
console.log(unique(countArr))

上面的程式碼實現了我們的要求,下面介紹一下它的實現過程。

一.程式碼註釋:

(1).var countArr = [1, 2, 3,4,5,6,2,4],此陣列的元素會被去重。

(2).function unique(arr) {},此方法可以實現去重功能。

(3).var resultArr = [],此陣列用來儲存去重後的元素。

(4).hash = {},一個物件直接量,下面會用到。

(5).for (var index = 0, elem;(elem = arr[index]) != null; index++) {},遍歷陣列中的每一個元素,並將陣列元素賦值給變數elem。

(6).if (!hash[elem]) {},將元素值作為物件直接量的屬性;判斷物件是否已經存在此屬性。

(7).resultArr.push(elem),如果不存在,說明沒有重複,那麼就將這個元素存入結果陣列。

(8).hash[elem] = true,將屬性值設定為true。

二.相關閱讀:

(1).push()方法參閱javascript push()一章節。

(2).for迴圈參閱javascript for一章節。

相關文章