JavaScript数组如何实现去重
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,这篇文章主要介绍了JavaScript数组如何实现去重,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。方法一:set :不是一种数据类型
千家信息网最后更新 2025年02月02日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安全错误
数据库的锁怎样保障安全
浙江gps双模时间服务器设置
邢台星友网络技术服务
西门子smart可以连数据库吗
有关全文数据库以下说法错误的是
穿衣软件开发
高度重视网络安全工作的意义
现代工业通讯及网络技术
密码锁网络安全问题
网络数据库是什么通俗
上海电商软件开发要多少钱
数据库隔离级别与锁
怎么找外派越南软件开发
数据库三个盘
软件开发外包进腾讯
青少年树立网络安全意识
计算机网络技术属于文科吗
软件开发 最近 流行
信息网络安全新闻
开源期货软件开发技术
pg数据库批量修改
光遇线下服务器有
广工数据库实验安全性
广州智慧法治文化展馆软件开发
卫生监督所网络安全应急预案
音乐服务器有问题
深圳智慧门禁软件开发怎么收费
刘明顺软件开发
网络安全复查网站违规代码
visio中的数据库标志
花旗软件开发背调流程