ES6数组去重以及多维数组,多个多维数组去重

Song • 77 次浏览 • 0 个回复 • 2020年11月03日

1.单个数组的去重

一维数组如果想快速的去重,你可以将它转化成SetSet类似于数组,区别在于它所有的成员都是唯一的,不能有重复的值。

let arr = [1, 2, 2, 3];
Array.from(new Set(arr))

2.多个数组去重 返回不同数据展示

方法相同,先合并再去重。

let a = [1, 2, 3, 4]
let b = [3, 4, 5]
let union = [...new Set([...a, ...b])]
console.log(union)

3.单个数组对象去重

单个数组肯定不能满足我们的使用,我们这里看看多维数组。

let b = [{ id: '4', result: '第三' }, { id: '2', result: '第四' }, { id: '2', result: '第二' }]
let d = []
let hash = {}
d = b.reduce((item, next) => {
    hash[next.id] ? '' : hash[next.id] = true && item.push(next)
    return item
}, []);
console.log(d, '看看看')

4.多个数组对象去重

let jsonArray = [{ id: '1', result: '第一' }, { id: '2', result: '第二' }]
let b = [{ id: '4', result: '第三' }, { id: '3', result: '第四' }, { id: '2', result: '第二' }]
let c = [...jsonArray, ...b] //两个数组合并一个的简单方法
let d = []
let hash = {}
d = c.reduce((item, next) => {
    hash[next.id] ? '' : hash[next.id] = true && item.push(next)
    return item
}, [])
console.log(d, '看看看')

原创文章,转载请注明 :ES6数组去重以及多维数组,多个多维数组去重 - Laravel学习网
原文出处: https://phpartisan.cn/news/149.html
问题交流群 :168117787
提交评论
要回复文章请先登录注册
用户评论
  • 没有评论
[ 配置教程 ] 在ubuntu16.04中部署LNMP环境(php7+maridb且开启maridb远程以及nginx多域名访问 )并配置laravel环境 es6 三元运算(三元类目)符语法与简写,多条件判断与??::形式