美文网首页
使用Set为数组去重

使用Set为数组去重

作者: 崔可一 | 来源:发表于2017-12-07 18:50 被阅读866次

    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]
    

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

    相关文章

      网友评论

          本文标题:使用Set为数组去重

          本文链接:https://www.haomeiwen.com/subject/opejixtx.html