站長資訊網
        最全最豐富的資訊網站

        javascript數組去重有哪幾種方式

        去重方式:1、用“Array.from(new Set(arr))”語句;2、用“[…new Set(arr)]”語句;3、用“arr.filter((item,index)=>arr.indexOf(item)===index)”語句。

        javascript數組去重有哪幾種方式

        本教程操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。

        JavaScript 數組去重的幾種方式

        1、Array.from(new Set(arr))

        const arr = [1, 2, 3, 2, 3];  Array.from(new Set(arr)); // [1, 2, 3]

        由于 Set 中的元素是唯一的,無論是原始值或者是對象引用,所以可以通過將數組轉換成 Set 對象來實現去重

        Array.from方法可以將 Set 對象轉換成數組

        2、[…new Set(arr)]

        const arr = [1, 2, 3, 2, 3]; [...new Set(arr)]; // [1, 2, 3]

        這里是通過 ES6 的展開語法將 Set 對象轉換成數組;

        3、arr.filter((item, index) => arr.indexOf(item) === index)

        const arr = [1, 2, 3, 2, 3];  arr.filter((item, index) => arr.indexOf(item) === index); // [1, 2, 3]

        indexOf方法返回指定元素在數組中的第一個索引(index), 如果沒有則返回 -1

        所以這里的 arr 數組中的每個元素通過 indexOf() 方法返回的索引值分別是 0 1 2 1 2

        arr.forEach(item => console.log(arr.indexOf(item))); // 0 1 2 1 2

        可以通過 indexOf 來實現去重,比如 arr 中的第四個元素 2 通過 indexOf 返回的是索引是 1, 但是它當前的 index 下標是 3,不相等,說明當前的這個 2 元素在之前出現過, 所以應該把它過濾掉

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 亚洲国产精品乱码一区二区| 亚洲AV无码成人精品区天堂 | 99热精品久久只有精品| 正在播放酒店精品少妇约| 国产精品丝袜久久久久久不卡| 97国产精品视频| 日韩欧精品无码视频无删节 | 国产精品亚洲专区在线观看 | 热re99久久精品国产99热| 久久精品国产亚洲av水果派| 亚洲欧美日韩精品久久亚洲区| 国产欧美精品一区二区色综合| 国产一区二区精品久久| 成人精品视频一区二区三区| …久久精品99久久香蕉国产| 欧美精品免费专区在线观看| 亚洲国产综合91精品麻豆| 91精品国产综合久久久久久| 精品视频无码一区二区三区| 一本一本久久A久久综合精品 | 国产午夜精品理论片久久| 欧美精品人爱c欧美精品| 9久久9久久精品| 精品无人区一区二区三区| 亚洲AV成人精品一区二区三区| 污污网站国产精品白丝袜| 蜜桃麻豆www久久国产精品| 国内精品久久久久国产盗摄| 国产成人精品在线观看| 欧美精品黑人巨大在线播放| 久久青草国产精品一区| 免费视频精品一区二区三区| 国产精品一区在线播放| 国产精品久久波多野结衣| 国产精品久久久久9999| 精品视频一区二区三区在线观看| 99精品免费视频| 韩国精品欧美一区二区三区| 久久91精品国产91久久麻豆 | 97久久精品午夜一区二区| 91精品国产福利在线导航|