美文网首页
数组去重

数组去重

作者: 泡杯感冒灵 | 来源:发表于2020-08-01 09:41 被阅读0次

    常用的几种方式

    • 传统方式,遍历元素,挨个比较去重
    function unique(arr) {
      const res = []
      
      arr.forEach(item => {
        if (res.indexOf(item) < 0) {
          res.push(item)
        }
      })
    
      return res
    }
    
    console.log(unique([1,2,3,3,4,5,2]))  //[1, 2, 3, 4, 5]
    
    • 使用Set
    // Set 对象允许你存储任何类型的唯一值,无论是原始值或者是对象引用
    // Set 中的元素只会出现一次,即 Set 中的元素是唯一的。
    function unique(arr) {
      const set = new Set(arr)
      // 解构set,然后返回
      return [...set]
    }
    
    console.log(unique([1,2,3,3,4,5,2]))  //[1, 2, 3, 4, 5]
    
    • 考虑计算效率,最好用第二种方式,但是要看使用环境,第二种方法会有一定的兼容性问题。第一种方法效率低一些,但是如果数据量不大,两种方法相差不多

    相关文章

      网友评论

          本文标题:数组去重

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