数组的去重(引用类型,二维数组的去重)

我们知道 一般说起去重 我们都会用到现在es6的Set集合,或者配个Array.from方法使用

像这样 const arr = [1,2,3,5,5,7,7,5,4]

const newArr = Array.from(new Set(arr)) 

console.log(newArr) // [1,2,3,5,7,4]

像这样简单的数组去重可以这样用 但是如果是二维数组或者多维数组 或者是数组里面是对象形式的引用类型的该怎么去重呢 接下来就介绍一下

var myArr = [

{coinId: "2",maxCNYAmount: "1000000.00",minCNYAmout: "100.00",referenceCoinCNYPrice: "8000",shortName: "aa"},

{coinId: "1",maxCNYAmount: "1000000.00",minCNYAmout: "100.00",referenceCoinCNYPrice: "8000",shortName: "bb"},

{coinId: "2",maxCNYAmount: "1000000.00",minCNYAmout: "100.00",referenceCoinCNYPrice: "8000",shortName: "aa"},

{coinId: "1",maxCNYAmount: "1000000.00",minCNYAmout: "100.00",referenceCoinCNYPrice: "8000",shortName: "bb"},

{coinId: "2",maxCNYAmount: "1000000.00",minCNYAmout: "100.00",referenceCoinCNYPrice: "8000",shortName: "aa"},

];

var obj= {};

myArr = myArr .reduce((item, next)=> {obj[next.coinId] ?'':obj[next.coinId] =true&& item.push(next);return item}, [])

console.log(myArr );

这样就可以了 

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。