为了账号安全,请及时绑定邮箱和手机立即绑定

JavaScript 对象数组,如何筛选出有相同key的对象

JavaScript 对象数组,如何筛选出有相同key的对象

MMMHUHU 2019-07-06 23:00:18
问题描述:我有下面这样一个数组,数组里面每个对象有三个相同的key:name、age、hair。letnamelist=[{name:'mark',age:15,hair:'long'},{name:'tuwen',age:16,hair:'short'},{name:'xiaoming',age:16,hair:'short'},{name:'lilei',age:15,hair:'short'},{name:'hanmei',age:17,hair:'long'}]筛选条件:数组中age相同的对象分到一个数组里。期望结果:arr_1=[{name:'mark',age:15,hair:'long'},{name:'lilei',age:15,hair:'short'}]arr_2=[{name:'tuwen',age:16,hair:'short'},{name:'xiaoming',age:16,hair:'short'}]arr_3=[{name:'hanmei',age:17,hair:'long'}]
查看完整描述

2 回答

?
慕哥9229398

TA贡献1877条经验 获得超6个赞

letres=[]
while(nameList.length!==0){
letlist=nameList.shift()
letarr=[list]
for(leti=0;iif(nameList[i].age===list.age){
arr=arr.concat(nameList.splice(i,1))
i--
}
}
res.push(arr)
}
                            
查看完整回答
反对 回复 2019-07-06
?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

我的思路是先使用map得到所有的age
letone=namelist.map(function(e){
returne.age
})
然后去重
newSet(one)
然后用filter方法,得到你想要的各个数组集合
                            
查看完整回答
反对 回复 2019-07-06
  • 2 回答
  • 0 关注
  • 5051 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号