如何對數(shù)組進(jìn)行去重?建站文章
導(dǎo)讀:建站文章建站文章在程序開發(fā)中,經(jīng)常會遇到需要對一個數(shù)組進(jìn)行去重的情況。既然要去重,那么就意味著要將數(shù)組中的重復(fù)元素刪除,因此解決這個問題的核心問題就是如何判斷兩個元素是否相同。網(wǎng)站建設(shè)教程網(wǎng)站建設(shè)制作。
在程序開發(fā)中,經(jīng)常會遇到需要對一個數(shù)組進(jìn)行去重的情況。既然要去重,那么就意味著要將數(shù)組中的重復(fù)元素刪除,因此解決這個問題的核心問題就是如何判斷兩個元素是否相同。
下面介紹幾種常見的數(shù)組去重方法:
方法一:使用Set
利用ES6中新增的數(shù)據(jù)結(jié)構(gòu)Set,可以方便地實現(xiàn)數(shù)組去重。
const arr = [1, 2, 3, 2, 1]; const newArr = [...new Set(arr)]; console.log(newArr); // [1, 2, 3]上述代碼中,首先創(chuàng)建了一個包含重復(fù)元素的數(shù)組arr,然后通過擴(kuò)展運(yùn)算符(...)和Set數(shù)據(jù)結(jié)構(gòu),得到了一個新的數(shù)組newArr,其中所有重復(fù)元素都被去除了。
方法二:使用Map
如果要對一個對象數(shù)組或字符串?dāng)?shù)組進(jìn)行去重,可以使用Map來實現(xiàn)。
function unique(arr) { const map = new Map(); return arr.filter(item => !map.has(item) && map.set(item, true)); } const arr1 = [{name: '張三', age: 20}, {name: '李四', age: 25}, {name: '張三', age: 20}]; const arr2 = ['apple', 'banana', 'orange', 'banana']; console.log(unique(arr1)); // [{name: '張三', age: 20}, {name: '李四', age: 25}] console.log(unique(arr2)); // ['apple', 'banana', 'orange']上述代碼中,定義了一個名為unique的函數(shù),該函數(shù)接收一個數(shù)組作為參數(shù),使用Map數(shù)據(jù)結(jié)構(gòu)實現(xiàn)去重,并返回一個新的數(shù)組。當(dāng)Map對象中不存在當(dāng)前元素時,就把該元素添加到Map中,并返回true,否則返回false。
方法三:使用indexOf
如果要對一個數(shù)字或字符串?dāng)?shù)組進(jìn)行去重,可以使用indexOf方法來實現(xiàn)。
function unique(arr) { const newArr = []; arr.forEach(item => { if (newArr.indexOf(item) === -1) { newArr.push(item); } }); return newArr; } const arr1 = [1, 2, 3, 2, 1]; const arr2 = ['apple', 'banana', 'orange', 'banana']; console.log(unique(arr1)); // [1, 2, 3] console.log(uniq網(wǎng)站建設(shè)教程ue(arr2)); // ['apple', 'banana', 'orange']上述代碼中,定義了一個名為unique的函數(shù),該函數(shù)接收一個數(shù)組作為參數(shù),使用indexOf方法實現(xiàn)去重,并返回一個新的數(shù)組。當(dāng)新數(shù)組中不存在當(dāng)前網(wǎng)站推廣優(yōu)化seo元素時,就把該元素添加到新數(shù)組中。
綜上所述,以上三種方法均可用于對數(shù)組進(jìn)行去重。在實際開發(fā)中,根據(jù)具體情況選擇合適的方法百度seo網(wǎng)站優(yōu)化即可。
相關(guān)網(wǎng)站建設(shè)教程網(wǎng)站建設(shè)制作。聲明: 本文由我的SEOUC技術(shù)文章主頁發(fā)布于:2023-05-27 ,文章如何對數(shù)組進(jìn)行去重?建站文章主要講述數(shù)組,建站網(wǎng)站建設(shè)源碼以及服務(wù)器配置搭建相關(guān)技術(shù)文章。轉(zhuǎn)載請保留鏈接: http://www.bifwcx.com/article/web_10988.html
為你推薦與如何對數(shù)組進(jìn)行去重?建站文章相關(guān)的文章
-
通王TWCMS 2.0.3網(wǎng)站模板程序下載
(126)人喜歡 2024-01-15 -
Windows官方原版在哪里下載
(175)人喜歡 2024-01-15 -
WordPress網(wǎng)站模板發(fā)帖標(biāo)題顏色設(shè)置
(131)人喜歡 2024-01-07 -
修改discuz論壇帖子標(biāo)題80字符的長度限制
(249)人喜歡 2024-01-07 -
wordpress程序調(diào)用不帶超鏈接的Tag標(biāo)簽
(234)人喜歡 2024-01-05 -
網(wǎng)站在不同時期需調(diào)整內(nèi)容更新的方向
(112)人喜歡 2023-08-12