用JSON.stringify()和JSON.parse()就可以实现了
比如说有一个数组里面装很多的对象,并且有很多对象的值重复的
let objArr = [
{name:zhangsan,age:20,sex:man},
{name:zhangsan,age:21,sex:man},
{name:zhangsan,age:21,sex:man},
{name:zhangsan,age:20,sex:man},
{name:zhangsan,age:20,sex:man},
]
但是我只想的到{name:zhangsan,age:20,sex:man}和{name:zhangsan,age:21,sex:man}这两条不重复的数据
********实现
先遍历数组,用JOSN.stringify将对象转成字符串
objArr = objArr.map( v => JSON.stringify(v) )
然后就可以使用new Set()来数组去重了
objArr = [ ...new Set(objArr) ]
然后再将去重后的数组里面的json格式的对象用JSON.parse()转成对象就行了
objArr = objArr.map( v => JSON.parse(v) )
*********经过JSON.stringify()和JSON.parse()得到的对象是拷贝出的新对象,与源对象不再指向同一内存地址
又是学习的一天呢!