使用Set为数组去重

崔可一IP属地: 湖南
字数 141

Set简介

Set是ES6中新的对象,集合中的对象值不能重复,无论是原始值或者是对象引用。

使用示例

var set = new Set();

set.add(1);
set.add(5);
set.add("some text");

set.has(1); // true
set.has(3); // false, 3还没有被添加到set中
set.has(5);              // true
set.has(Math.sqrt(25));  // true
set.has("Some Text".toLowerCase()); // true

set.size; // 3

set.delete(5); // 从set中移除5
set.has(5);    // false, 5已经被移除

set.size; // 2, 我们刚刚移除了一个值

SetArray的区别在于:Array中允许出现重复的元素,例如[1,2,2,3];而Set中的所有元素都是唯一的,只能是{1,2,3}。利用这一特性,我们就可以迅速地去掉数组中重复的元素。

数组去重

var arr = [1,2,2,3,4] // 需要去重的数组

var set = new Set(arr) // {1,2,3,4}
var newArr = Array.from(set) // 再把set转变成array

console.log(newArr) // [1,2,3,4]

在处理页面展示次数埋点时,很实用的方法。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
0人点赞
崔可一我就是我自己的神。
总资产6共写了1.7W字获得115个赞共48个粉丝

推荐阅读更多精彩内容