js数组筛选过滤
var arr = [
{name:'xiaoming',id:"123"},
{name:'xiaoming',id:"456"},
{name:'xiaoming',id:"789"},
{name:'xiaohua',id:"101112"},
{name:'xiaowang',id:"131415"},
{name:'xiaohong',id:"161718"}
];
var obj = [];
for(var i=0; i<arr.length; i++){
obj[arr[i]['name']] = arr[i]['id'];
}
console.log(obj)
我想把'name'为'xiaoming'的id过滤出来
这是现在的结果,我本来想objarr[i].push() 但用不了这个方法,
不要用if或别的什么判断
,有没有直接暴力的枚举算法
[xiaoming: "789", xiaohua: "101112", xiaowang: "131415", xiaohong: "161718"]
我想实现的是[xiaoming: ['123','456','789']]
或者{name:'xiaoming',id:['123','456','789']}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
引入jq文件
或者
这个用filter很好实现的
Nodejs中的一些小trick - QueenKing - SegmentFault https://segmentfault.com/a/11...
没用if…用了三元表达式…
mycodepen
首先,你给的参考结果前半句
[xiaoming: ['123','456','789']]
语法上就有问题,我想你是要后半句{xiaoming: ['123','456','789']}
。实现过程如下(es6 语法)