美文网首页JavaScript
JS 中常用的数组去重方法

JS 中常用的数组去重方法

作者: limengzhe | 来源:发表于2020-10-19 20:10 被阅读0次

Set

Set 是 ES2015 新增的一种数据结构,类似数组,Set 中的元素只会出现一次,即 Set 中的元素是唯一的。

const a = [1, 2, 3, 4, 5, 5, 5];
const b = Array.from(new Set(a));

console.log(b); // expected output: [ 1, 2, 3, 4, 5 ]

双层 for 循环

判断每一项是否相等

function unique(arr) {
  for (let i = 0; i < arr.length; i++) {
    for (let j = i + 1; j < arr.length; j++) {
      if (arr[i] == arr[j]) {
        arr.splice(j, 1);
        j--;
      }
    }
  }
  return arr;
}

const a = [1, 2, 3, 4, 5, 5, 5];
const b = unique(a);

console.log(b); // expected output: [ 1, 2, 3, 4, 5 ]

indexOf()includes()

创建一个新数组,利用 indexOf()includes() 判断新数组是否包含已存在的元素,如果没有则添加到新数组。

function unique(source) {
  let target = [];
  source.forEach(item => {
    if (target.indexOf(item) < 0) {
      target.push(item);
    }
  });
  return target;
}

const a = [1, 2, 3, 4, 5, 5, 5];
const b = unique(a);

console.log(b); // expected output: [ 1, 2, 3, 4, 5 ]

filter

利用 filter 返回元素在数组中首次出现的索引值和该元素的索引一样的元素的新数组,即重复出现的元素会被过滤掉。

function unique(arr) {
  return arr.filter((item, index, arr) => arr.indexOf(item, 0) === index);
}

const a = [1, 2, 3, 4, 5, 5, 5];
const b = unique(a);

console.log(b);

相关文章

  • JavaScript数组去重

    JavaScript中数组的常用操作之数组去重 方法一 方法二

  • 前端开发备忘录

    js 数组去重的方法 最常用的方式 对象键值法去重 es6 Set方法一键去重 js常见的循环与遍历以及不同循...

  • 数组

    数组 数组常用方法 数组去重

  • 5.18 总结

    1 数组去重 js数组去重的常用方法总结 2 定时器的返回值是定时器的编号 定时器的执行;(全部js代码执...

  • js中数组对象去重的方法

    采用数组中的reduce方法,遍历数组,也是通过对象访问属性的方法 参考js中数组对象去重的方法

  • 关于数组

    数组的创建 数组的小方法 常用方法 1、清空一个数组 2、删除数组中的偶数 3、数组去重

  • 数组方法小结

    数组的创建 数组的小方法 常用方法 1、清空一个数组 2、删除数组中的偶数 3、数组去重

  • 数组去重

    分类 非对象数组去重 对象数组去重 分类一 --- 非对象数组去重 方法一: set(es6常用) 方法二:red...

  • js中数组去重的方法

    在实际工作或面试中,我们经常会遇到“数组去重”问题,接下来就是使用js实现的数组去重的多种方法: 1.将数组的每一...

  • js数组去重的常用方法总结

    1.js数组去重的常用方法总结 1.第一种是比较常规的方法思路:1.构建一个新的数组存放结果2.for循环中每次从...

网友评论

    本文标题:JS 中常用的数组去重方法

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