用Set为数组去重

Set简介

Set是ES6中新的对象,本日有时打仗,发明应用它能够敏捷为数组去重,只需要两行代码

鸠合(Set)对象许可你存储恣意范例的唯一值(不能反复),不管它是原始值或者是对象援用。

运用示例

var mySet = new Set();

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

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

mySet.size; // 3

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

mySet.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]

固然数组去重的要领有许许多多,只是适才被set爽到了,所以才写下这篇文章。

    原文作者:赤橙酱
    原文地址: https://segmentfault.com/a/1190000009122238
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞