如何对数组进行去重?建站文章
导读:建站文章建站文章在程序开发中,经常会遇到需要对一个数组进行去重的情况。既然要去重,那么就意味着要将数组中的重复元素删除,因此解决这个问题的核心问题就是如何判断两个元素是否相同。网站建设教程网站建设制作。
在程序开发中,经常会遇到需要对一个数组进行去重的情况。既然要去重,那么就意味着要将数组中的重复元素删除,因此解决这个问题的核心问题就是如何判断两个元素是否相同。
下面介绍几种常见的数组去重方法:
方法一:使用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 ,文章如何对数组进行去重?建站文章主要讲述数组,建站网站建设源码以及服务器配置搭建相关技术文章。转载请保留链接: https://www.seouc.com/article/web_10988.html
- 上一篇:如何使用CSS获取最后一个子元素后端开发
- 下一篇:如何在网页中生成随机颜色后端开发