美文网首页
使用ES6语法处理数组基本类型,引用类型的去重

使用ES6语法处理数组基本类型,引用类型的去重

作者: 刘圣凯 | 来源:发表于2020-04-23 18:32 被阅读0次

数组去重的方法有很多种,下面给大家几个使用es6去重的方法

1.数组去除重复基本类型

利用 SetArray.from 两个es6的语法可以快速完成基本类型的数组去重
Set 是一种新的数据结构,它可以接收一个数组或者是类数组对象,自动去重其中的重复项目,使用方式如下

new Set(arr)

不过需要注意的是,利用 Set 去重返回的是一个 Json 对象,并非数组,这时候我们可以使用 Array.from
Array.from 可以把类数组对象、可迭代对象转化为数组,封装成函数如下

function distinct(arr){
  return Array.from(new Set(arr))
}

2.数组去除引用类型

如果是需要去重引用类型的话, 则可以使用 reduce

reduce 方法对数组中的每个元素执行一个由您提供的reducer函数(升序执行),将其结果汇总为单个返回值

reducer 函数接收4个参数:

  • Accumulator (acc) (累计器)
  • Current Value (cur) (当前值)
  • Current Index (idx) (当前索引)
  • Source Array (src) (源数组)
    您的 reducer 函数的返回值分配给累计器,该返回值在数组的每个迭代中被记住,并最后成为最终的单个结果值。

实例如下:

  function distinct(arr){
    var result = []
    var obj = {}
    arr.reduce((item,next)=>{
      // 这里判断的是数组引用类型中的ID, 各位可自行替换判断依据
      obj[next.id]?'':obj[next.id]=true&&result.push(next)
    })
    return result
  }

以上就是数组去重的几个小技巧了,get起来吧。

相关文章

  • 使用ES6语法处理数组基本类型,引用类型的去重

    数组去重的方法有很多种,下面给大家几个使用es6去重的方法 1.数组去除重复基本类型 利用 Set 和 Array...

  • Array 常见的处理方法

    数组去重 去重可以借用ES6的Set 但是去重只能针对基本数据类型,引用类型实际上是不同的实例,无法直接去重,除非...

  • 数组去重

    基础类型数组去重 ES5 ES6 复杂类型数组去重 ES5 ES6

  • JNI--数组的访问

    今天来使用JNI对数组操作,数组分为基本类型数组和引用类型数组,首先来看下基本类型数组的使用 1.基本类型数组 我...

  • c/c++语言基础

    c/c++语言基础 基本类型(基本内置类型) 构造类型 指针类型 引用类型 空类型 数组 预处理命令 基本类型 基...

  • 第5章:引用类型

    导读: 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型和基本包装类型 引用类型、对象、...

  • 5 引用类型

    本章内容 使用对象 创建并操作数组 理解基本的 JavaScript 类型 使用基本类型和基本包装类型 引用类型的...

  • 面向对象学习笔记

    - 数组其实就是一种引用类型。 int是基本类型,int[]是引用类型 数组是引用类型,引用类型和基本类型的区别在...

  • Java- 一维数组:

    Java- 一维数组: 使用语法 elementType[] arrayRefVar(元素类型[] 数组引用变量)...

  • javascript高级程序设计(第5章) -- 引用类型

    第五章:引用类型 本章内容: 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型和基本包装...

网友评论

      本文标题:使用ES6语法处理数组基本类型,引用类型的去重

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