美文网首页
js数组去重

js数组去重

作者: 前端来入坑 | 来源:发表于2020-02-15 12:21 被阅读0次
set
let arr = [1,1,2,2,3,4,5,5,6,7,7,8,9,9];
let newArr = [...new Set(arr)];
console.log(newArr);//[1, 2, 3, 4, 5, 6, 7, 8, 9]
filter
// 这种方法会有一个问题:[1,'1']会被当做相同元素,最终输入[1]
function unique(arr) {
  return arr.filter(function(item, index, arr) {
    //当前元素,在原始数组中的第一个索引==当前索引值,否则返回当前元素
    return arr.indexOf(item, 0) === index;
  });
}
let arr = [1,1,2,2,3,4,5,5,6,7,7,8,9,9];
let newArr = unique(arr);
console.log(newArr);//[1, 2, 3, 4, 5, 6, 7, 8, 9]
reduce
let arr =  [1,1,2,2,3,4,5,5,6,7,7,8,9,9];
let newArr = arr.reduce(function(ar,cur) {
  if(!ar.includes(cur)) {
    ar.push(cur)
  }
  return ar
},[]);
console.log(newArr);//[1, 2, 3, 4, 5, 6, 7, 8, 9]

相关文章

  • 数组的去重和数组中对象的去重

    数组中对象去重 方式1 jq方式 方式2 原生js方式 普通数组的去重 方式1 普通的数组去重js 方式2 Se...

  • js数组去重、对象数组去重

    普通数组去重 一、普通数组去重 方法一:遍历数组法 方法二:排序法 方法三:对象法 对象数组去重 方法一:将对象数...

  • js数组去重

    Set结构去重 ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。 向 Se...

  • JS数组去重

    方法1:两层for循环,外层循环原数组,内层循环时进行比较。 方法2:利用对象的属性不能相同的特点去重 方法3:利...

  • js数组去重

  • js数组去重

    1.利用对象的属性唯一性去重 2.利用es6的Set

  • js数组去重

  • js 数组去重

  • JS数组去重

    方法一:遍历数组,建立新数组,利用indexOf判断是否存在于新数组中,不存在则push到新数组,最后返回新数组 ...

  • js数组去重

    方法一 (es6 set方法,简单粗暴) 方法二 创建空数组,用indexOf方法检索,没有的话插入新数组中 方...

网友评论

      本文标题:js数组去重

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