中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

JavaScrip數組去重的方法有哪些

發布時間:2021-09-10 09:12:43 來源:億速云 閱讀:115 作者:chen 欄目:web開發

這篇文章主要講解了“JavaScrip數組去重的方法有哪些”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“JavaScrip數組去重的方法有哪些”吧!

本文實例講述了JavaScrip數組去重操作。分享給大家供大家參考,具體如下:

內置的for-of方法

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

<script>

var arr=[2,1,1,3,'','','e','e',true,'true',true,false,false,'false',undefined,'undefined',undefined,null,'null',null];

function uniqueUseForOf(array) {

  const temp = []; //一個臨時數組

  // 傳入值必須存在,且長度小于等于1的時候直接返回數組

  if (array && array.length <= 1) {

    return array;

  } else {

    //遍歷當前數組

    for (let x of array) {

      temp.indexOf(x) === -1 ? temp.push(x) : '';

    }

  }

  return temp;

}

uniqueUseForOf(arr);

console.log(uniqueUseForOf(arr))

</script>

內置的forEach方法

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

<script>

var arr=[3,1,1,3,'','','e','e',true,'true',true,false,false,'false',undefined,'undefined',undefined,null,'null',null];

function uniqueUseForEach(array) {

  // 傳入值必須存在,且長度小于等于1的時候直接返回數組

  if (array && array.length <= 1) {

    return array;

  } else {

    var temp = []; //一個臨時數組

    //遍歷當前數組

    array.forEach(function (value, index) {

      temp.indexOf(value) == -1 ? temp.push(value) : '';

    })

    return temp;

  }

}

uniqueUseForEach(arr);

console.log(uniqueUseForEach(arr))

</script>

萬能的for方法

1

2

3

4

5

6

7

8

9

10

11

12

13

14

<script>

var arr=[1,1,'','','e','e',true,'true',true,false,false,'false',undefined,'undefined',undefined,null,'null',null];

function uniqueUseFor(array) {

  var temp = []; //一個臨時數組

  //遍歷當前數組

  for (var i = 0, j = array.length; i < j; i++) {

    //很直白,新數組內判斷是否有這個值,沒有的情況下,就推入該新數組

    temp.indexOf(array[i]) === -1 ? temp.push(array[i]) : '';

  }

  return temp;

}

uniqueUseFor(arr);

console.log(uniqueUseFor(arr))

</script>

第一種方法:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

<script>

var arr = [1, 2, 3, 4, 1, 2, 4, 5, 6];

console.log(arr);

Array.prototype.unique = function() {

  var n = [this[0]]; //結果數組

  for(var i = 1; i < this.length; i++) //從第二項開始遍歷

  {

    //如果當前數組的第i項在當前數組中第一次出現的位置不是i,

    //那么表示第i項是重復的,忽略掉。否則存入結果數組

    if(this.indexOf(this[i]) == i) n.push(this[i]);

  }

  return n;

};

console.log(arr.unique());

</script>

第二種方法:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

<script>

var arr = [1,2,3,4,1,2,4,5,6];

console.log(arr);

Array.prototype.unique = function()

{

  var n = {},

    r = []; //n為hash表,r為臨時數組

  for (var i = 0; i < this.length; i++) { //遍歷當前數組

    if (!n[this[i]]) { //如果hash表中沒有當前項

      n[this[i]] = true; //存入hash表

      r.push(this[i]); //把當前數組的當前項push到臨時數組里面

    }

  }

  return r;

};

console.log(arr.unique());

</script>

感謝各位的閱讀,以上就是“JavaScrip數組去重的方法有哪些”的內容了,經過本文的學習后,相信大家對JavaScrip數組去重的方法有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

牡丹江市| 彭州市| 白山市| 汽车| 米泉市| 垣曲县| 额敏县| 嘉峪关市| 炉霍县| 从江县| 泸定县| 宿迁市| 闻喜县| 犍为县| 济南市| 武平县| 佛学| 大连市| 屏南县| 三台县| 乳源| 平湖市| 百色市| 前郭尔| 关岭| 枣强县| 方山县| 丹阳市| 龙海市| 剑川县| 城口县| 米林县| 托里县| 扎鲁特旗| 平和县| 海安县| 唐山市| 大连市| 红桥区| 内乡县| 杨浦区|