JavaScript数组如何实现去重
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章主要介绍了JavaScript数组如何实现去重,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。方法一:set :不是一种数据类型
千家信息网最后更新 2026年10月31日JavaScript数组如何实现去重
这篇文章主要介绍了JavaScript数组如何实现去重,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
方法一:set :不是一种数据类型,是一种数据结构;成员唯一
let arr = [12,1,12,3,1,88,66,9,66];function unique(ary) { let s = new Set(ary); // Array.from : 将set数据结构转成真正的数组; return Array.from(s) } unique(arr);方法二:对象属性名不能重复
let arr = [12,1,12,3,1,88,66,9,66];function unique(ary) { let obj = {}; for(let i=0;i方法三:indexOf
let arr = [12,1,12,3,1,88,66,9,66]; function unique(ary) { let newAry = []; for(let i=0;i方法四:sort
let arr = [12,1,12,3,1,88,66,9,66];function unique(ary) { let a = ary.sort(function (a,b) { return a-b; }); for(let i=0;i方法五:includes :包含;如果数组包含那一项,返回true;不包含返回false;
let arr = [12,1,12,3,1,88,66,9,66];function unique(ary) { let newAry = []; let len = ary.length; for(let i=0;i方法六:hasOwnProperty : 检测属性名是否是对象的一个私有属性;返回一个布尔值;
let arr = [12,1,12,3,1,88,66,9,66];function unique(ary) { let obj = {}; return ary.filter(function (item,index,a) { // item : 数组每一个成员 // index: 成员对应的索引 // a : 整个数组 // hasOwnProperty来校验的该属性是否出现过; return obj.hasOwnProperty(typeof item+item)?false:obj[typeof item+item]=true; if(obj.hasOwnProperty(typeof item+item)){ return false }else{ obj[typeof item+item]=true; return true; } }) } console.log(unique(arr))方法七:filter+indexOf
let arr = [12,1,12,3,1,88,66,9,66]; function unique(ary) { return ary.filter(function (item,index,a) { return ary.indexOf(item)===index; }) } console.log(unique(arr));方法八:splice
let arr = [12,1,12,3,1,88,66,9,66]; function unique(ary) { for(let i=0;i方法九:递归
let arr = [12,1,12,3,1,88,66,9,66];function unique(ary) { let len= ary.length; ary = ary.sort(function (a,b) { return a-b; }); function loop(index) { if(index>=1){ if(ary[index]===ary[index-1]){ ary.splice(index,1); } loop(index-1) } } loop(len-1); return ary; } console.log(unique(arr));方法十:Map :利用了Map数据结构存值的特点;
let arr = [12,1,12,3,1,88,66,9,66];function unique(ary) { let newAry =[]; let map = new Map(); for(let i=0;i方法十一:reduce
let arr = [12,1,12,3,1,88,66,9,66];function unique(ary) { // reduce : 第一个是函数,第二个参数会传给第一次回调的prev; return ary.reduce((prev,next)=>{ // 该函数返回值是下一次执行的prev; return prev.includes(next)?prev:[...prev,next]; },[]) } console.log(unique(arr));方法十二:类似于方法一的set,用了剩余运算符...
let arr = [12,1,12,3,1,88,66,9,66]; let a = [...new Set(arr)]; console.log(a);
感谢你能够认真阅读完这篇文章,希望小编分享的"JavaScript数组如何实现去重"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
方法
数组
属性
数据
篇文章
成员
数据结构
结构
函数
对象
价值
兴趣
参数
同时
布尔
更多
朋友
特点
知识
第一次
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
百单网互联网科技有限公司
科技赋能下的互联网金融
金融科技与互联网金融
嘟嘟瓜互联网科技
互联网科技革命
智慧科技互联网
深圳期待互联网科技
中国科技互联网公司收入
互联网科技有哪些公司
厦门比较好的科技互联网公司
互联网科技如何创业
滨湖区互联网智能科技产品有哪些
互联网科技实习生岗位
梅州GM互联网络科技有限公司
广州百诚互联网科技有限公司官网
互联网与数字科技关系
互联网高科技行业有哪些企业
数字互联网科技有限公司
恒生互联网科技趋势
互联网企业和网络科技有限公司
科技赋能下的互联网金融
互联网科技垄断
武汉健翔互联网络科技有限公司
宝灵互联网科技有限公司
互联网科技的全部知识
浙南科技城互联网大厦招聘
网互联网络科技
互联网科技创新方面的资料
株洲百竞科技的互联网营销顾问
武汉亿视互联网科技有限公司