美文网首页
数组去重

数组去重

作者: 阿亮2019 | 来源:发表于2018-05-28 08:40 被阅读5次

    传统方法

    const array = [1,5,2,3,4,2,3,1,3,4];
    
    const unique = function (arr) {
      const uniqueArr = [];
      array.forEach((item) => {
        !uniqueArr.includes(item) && uniqueArr.push(item);
      })
      
      return uniqueArr;
    }
    
    console.log(unique(array)); // 1, 5, 2, 3, 4
    
    

    ES6

    const unique2 = function (arr) {
      return [...new Set(array)];
    }
    
    console.log(unique2(array)); // 1, 5, 2, 3, 4
    

    扩展

    传统方法

    const unique3 = function (arr) {
      return arr.filter((item, index) => {
        return arr.indexOf(item) === index; // 1, 5, 2, 3, 4
      })
    }
    

    最后再写到 Array.prototype 原型中

    Array.prototype.unique = function() {
      return this.filter((item, index) => {
        return this.indexOf(item) === index;
      })
    }
    
    console.log(array.unique.apply(array));  // 1, 5, 2, 3, 4
    

    相关文章

      网友评论

          本文标题:数组去重

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