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,已经过了1905天,若内容或图片失效,请留言反馈 转载请注明出处: 皮哈皮阿
本文的链接地址: 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
-
让你的电脑说我爱你
新建一个记事本,在里面输入 CreateObject("SAPI.SpVoice").Speak "I love YOU" 保存扩展名为VBS文件 如1.vbs,双击运行看看。电脑就会说 i love you 了!!
2012/03/21
暂无评论
京公网安备11011402053654 
@muffin:链接已更新,分类图像功能...
AI网址导航模版图标库更换指南
作者大大,图标库邀请链接失效了,麻烦更新...
AI网址导航模版图标库更换指南
太好看了,快点更新!
友情链接
@戴墨镜的刘备:哈喽,路过点赞。
vue.js组件之手写签名板vue-signature-simple
太好看了,快点更新!太棒了!👍真的很赞!
vue.js组件之手写签名板vue-signature-simple
你写得非常清晰明了,让我很容易理解你的观...
Emlog插件RSS订阅器发布