JavaScript数组如何实现去重
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,这篇文章主要介绍了JavaScript数组如何实现去重,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。方法一:set :不是一种数据类型
千家信息网最后更新 2025年11月07日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安全错误
数据库的锁怎样保障安全
计算机网络技术就业领域
常用的三大中文全文数据库有啥
对数据库安全性产生威胁的原因
广东5g服务器机柜厂家
石家庄营销软件开发哪家便宜
ffmpeg 服务器
国标行业中的其他软件开发
网络安全的优点是什么
ole 数据库
fgo每天几更新服务器
e7管理系统显示消息服务器错误
dba数据库转型
python镜像服务器
软件开发程序员是真的吗
天蚂蚁网络安全
web服务器软件是干嘛的
魔兽怀旧服橙杖服务器
网络安全教育主题班会幼儿园
php 数据库中间件
蚌埠直播软件开发多少钱
星云服务器
777285惠普服务器风扇参数
龙海手机软件开发
内蒙古大学生网络安全与信息化
海南晶生互联网科技
垫片服务器循环播放设置
c lek 软件开发
互联网软件开发有市场吗
惠普小程序打印服务器
软件开发 什么合同