JavaScript中数组去重的几种方法如下, 这几个函数都可以对简单的一维数组进行去除重复的操作。
注意:请注意数据类型,比如字符串的1和数组1是不一样的,不算重复
一、利用数组的indexOf方法去重 (ES5)
原理:array.indexOf(item, start) 返回数组array中指定元素item的位置,没有则返回-1
var arr = [1, 3, 8, 9, 3, 5, 4, 4, 6, 6, 2]; function unique(arr) { var len = arr.length; var temp = []; // 新建一个数组来存放arr中的值 for (var i = 0; i < len; i++) { if(temp.indexOf(arr[i]) === -1){ temp.push(arr[i]); } } return temp; } // [1, 3, 8, 9, 5, 4, 6, 2] console.log(unique(arr));
二、使用ES6中的 Set 方法去重
原理:ES6 提供了新的数据结构 Set。它似于数组,但它的一大特性就是所有元素都是唯一的,没有重复。
var arr = [1, 3, 8, 9, 3, 5, 4, 4, 6, 6, 2]; function unique(arr) { return Array.from(new Set(arr)); } // [1, 3, 8, 9, 5, 4, 6, 2] console.log(unique(arr));
三、使用ES6中数组的includes 方法去重
原理:ES6 给数组提供了includes方法,判断元素是否在该数组中存在,类似indexOf判断
var arr = [1, 3, 8, 9, 3, 5, 4, 4, 6, 6, 2]; function unique(arr) { var len = arr.length; var temp = []; // 新建一个数组来存放arr中的值 for (var i = 0; i < len; i++) { if(!temp.includes(arr[i])){ temp.push(arr[i]); } } return temp; } // [1, 3, 8, 9, 5, 4, 6, 2] console.log(unique(arr));
本文发布于2020年09月01日13:45
,已经过了1697天,若内容或图片失效,请留言反馈
转载请注明出处: 皮哈皮阿
本文的链接地址: https://blog.phpat.com/dev/512.html
-
emlog主题模板 beginning 更新至v2.6.1
最近更新:更新到v2.5.7
2017/08/02
-
element-ui Radio 单选框组件默认值选不中?
请求中为数字/布尔的字段要多加注意,类型问题会导致很多bug出现。
2019/02/12
-
基于emlog开发的微信小程序开源了
基于emlog开发的微信小程序
2018/01/18
-
emlog模版仿小米论坛版本: V2.0
仿小米论坛版本更新V2.0,本次暂时更新这样了,以后会持续更新优化的。
2012/08/07
-
element-ui el-table 表格疯狂抖动跳动不停
element-ui el-table 表格疯狂抖动跳动不停, 这究竟是道德的沦丧还是人性的毁灭.~~
2019/07/11
-
Windows7程序图标无法锁定到任务栏的解决办法
2012/07/19
暂无评论
emlog简约社区模版发布了。
今天的你,戴口罩了吗? 没戴?小心病毒安排你跳社会摇!🕺 记得勤洗手,冲掉坏运气~ 积极防护,保护自己,晴天咱们一起当人群里最靓的仔!✨
2019加油!钱包要鼓,头发要多,烦恼要少,快乐要爆。愿你工作摸鱼得潇洒,生活撒欢得漂亮!别怕,宇宙都在暗中支持你!
人生真的是多姿多彩
不是每朵白云,都会带来真情;不是每个拥抱,都会面带微笑;不是每次思念,都能立刻兑现;不是每个朋友,都在身边守候;不是每个日子,都逢良辰吉时。国庆节到了,愿你节日快乐!
昨天和今天有什么不同
经朋友提示,Beginning模板一周年了,恭喜。 好事总会发生,敬请期待更好的作品
beginning模板越来越好了[耶]
2018是个新的开始
“生命是属于每个人自己的感受,不属于任何别人的看法。”