溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

JavaScript中如何實現(xiàn)數(shù)組去重

發(fā)布時間:2021-07-06 16:55:47 來源:億速云 閱讀:117 作者:Leah 欄目:開發(fā)技術(shù)

本篇文章為大家展示了JavaScript中如何實現(xiàn)數(shù)組去重,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

一、ES3方法:

var arr = ['a', 'a', 'b', 'b', 'b', 'c', 'e', 'f', 1, 2, 2, 3, 3, 3];

創(chuàng)建一個空數(shù)組與原來數(shù)組進行比較

//與前面的數(shù)組進行比較(不會改變原數(shù)組)function deleteRepeat() {  var result = [];  label: for(var i=0; i<arr.length; i++) {    for(var j=0; j<result.length; j++) {      if(result[j] == arr[i]) {        continue label;      }    }    result.push(arr[i]);  }  return result;}

//與后面的進行比較(不會改變原數(shù)組)function deleteRepeat() {  var result = [];  for(var i = 0; i < arr.length; i++) {    for(var j = i+1; j < arr.length; j++) {      if(arr[i] == arr[j]) {        j = ++i;      }    }    result.push(arr[i]);  }  return result;}

// splice()方法 (會改變原數(shù)組)function deleteRepeat() {  for(var i = 0; i < arr.length; i++) {    for(var j = i+1; j < arr.length; j++) {      if(arr[i] == arr[j]) {        arr.splice(j, 1);        j--;      }    }  }  return arr;}

// 利用對象的屬性不能重復(fù)特點(不會改變原數(shù)組)function deleteRepeat() {  var result = [];  var object = {};  for(var i = 0; i < arr.length; i++) {    var t = arr[i];    if(!object[t]) {      result.push(t);      object[t] = true;    }  }  return result;}

// 先排序再去重(只需要進行一次for循環(huán)、 會改變原數(shù)組)function deleteRepeat() {  var arr1 = arr.sort();  var result = [];  for(var i = 0; i < arr1.length; i++) {    if(arr1[i] != arr1[i+1]) {      result.push(arr1[i]);    }  }  return result;}

二、ES5方法:

利用IndexOf()方法

map()方法或forEach()方法或filter()方法

三、ES6方法

var a = [1, 2, 2, 3, 3, 3];[...new Set(a)];[1, 2, 3]

上述內(nèi)容就是JavaScript中如何實現(xiàn)數(shù)組去重,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI