js对象数组如何去重
生活随笔
收集整理的這篇文章主要介紹了
js对象数组如何去重
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
這篇文章主要介紹了js對象數組如何去重的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇js對象數組如何去重文章都會有所收獲,下面我們一起來看看吧。
1、使用reduce()方法對象數組去重
reduce()方法從左到右依次處理數組的每個成員,最終累計為一個值。
去重思路:
通過數組的reduce()方法對數組的對象從左到右進行處理,定義一個空對象obj{};
如果數組當前對象的name不在obj{},就將當前對象的name加入到空對象,并將當前對象push到積累變量total數組里;
如果當前對象的name存在obj{},則跳過push操作。
//reduce第一個參數是遍歷需要執行的函數,第二個參數是item的初始值
vararr=[{"id":1,"name":"張三"},{"id":2,"name":"李四"},{"id":3,"name":"王五"},{"id":2,"name":"張三"}];
varobj={};
arr=arr.reduce(function(item,next){
obj[next.id]?'':obj[next.id]=true&&item.push(next);
returnitem;
},[]);
console.log(arr);
2、利用set去重
unique(arr){
constres=newMap();
returnarr.filter((a)=>(
(!res.has(a.planNo)&&res.set(a.planNo,1))&&(!res.has(a.jobId)&&res.set(a.jobId,1))));
}
總結
以上是生活随笔為你收集整理的js对象数组如何去重的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 贷款可以先息后本吗,不可以
- 下一篇: 进项税怎么认证抵扣