美文网首页
js数组去重

js数组去重

作者: fronter | 来源:发表于2019-02-20 19:54 被阅读0次

第一种方法:创建空数组利用indexOf方法检测旧数组的项是否在新数组中。

Array.prototype.unique = function(){
  var arr = [];//创建新数组
  for(var i = 0; i < this.length; i++){ //遍历当前数组
  if(arr.indexOf(this[i]) === -1) {//如果等于-1,那么也是就是新数组中没有一项和当前数组一样
    arr.push(this[i])
 }
}
 return arr;
}
//调用:ary.unique()

第二种方法:创建空数组和空对象,判断数组是否在对象中

Array.prototype.unique = function(){
var tmp = {},arr = [] ;
for(var i = 0; i < this.length; i++){
  if(!tmp[this[i]]) {            //如果tmp中没有this[i]
    tmp[this[i]] = true;         //存入
    arr.push(this[i]);          //添加到新数组中
  }
}
return arr
}
//调用:ary.unique()

第三种方法:new Set数组去重( ES6去重方式,代码量最少 )

[...new Set([1,1,2,2,3,3])]; //[1,2,3]
//…(扩展运算符)
//扩展运算符:将一个数组转为用逗号分隔的参数序列

相关文章

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

    数组中对象去重 方式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/amycyqtx.html