如何對數組進行去重?建站文章
導讀:建站文章建站文章在程序開發中,經常會遇到需要對一個數組進行去重的情況。既然要去重,那么就意味著要將數組中的重復元素刪除,因此解決這個問題的核心問題就是如何判斷兩個元素是否相同。網站建設教程網站建設制作。
在程序開發中,經常會遇到需要對一個數組進行去重的情況。既然要去重,那么就意味著要將數組中的重復元素刪除,因此解決這個問題的核心問題就是如何判斷兩個元素是否相同。
下面介紹幾種常見的數組去重方法:
方法一:使用Set
利用ES6中新增的數據結構Set,可以方便地實現數組去重。
const arr = [1, 2, 3, 2, 1]; const newArr = [...new Set(arr)]; console.log(newArr); // [1, 2, 3]上述代碼中,首先創建了一個包含重復元素的數組arr,然后通過擴展運算符(...)和Set數據結構,得到了一個新的數組newArr,其中所有重復元素都被去除了。
方法二:使用Map
如果要對一個對象數組或字符串數組進行去重,可以使用Map來實現。
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的函數,該函數接收一個數組作為參數,使用Map數據結構實現去重,并返回一個新的數組。當Map對象中不存在當前元素時,就把該元素添加到Map中,并返回true,否則返回false。
方法三:使用indexOf
如果要對一個數字或字符串數組進行去重,可以使用indexOf方法來實現。
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網站建設教程ue(arr2)); // ['apple', 'banana', 'orange']上述代碼中,定義了一個名為unique的函數,該函數接收一個數組作為參數,使用indexOf方法實現去重,并返回一個新的數組。當新數組中不存在當前網站推廣優化seo元素時,就把該元素添加到新數組中。
綜上所述,以上三種方法均可用于對數組進行去重。在實際開發中,根據具體情況選擇合適的方法百度seo網站優化即可。
相關網站建設教程網站建設制作。聲明: 本文由我的SEOUC技術文章主頁發布于:2023-05-27 ,文章如何對數組進行去重?建站文章主要講述數組,建站網站建設源碼以及服務器配置搭建相關技術文章。轉載請保留鏈接: http://www.bifwcx.com/article/web_10988.html
- 上一篇:如何使用CSS獲取最后一個子元素后端開發
- 下一篇:如何在網頁中生成隨機顏色后端開發