说我有一个JS对象:
{categories : [{id:1, name:"foo", items:[{id:1, name="bar"},{id:2,name:"baz"]}]}
鉴于第一个类别(索引0)和一个项目ID,我希望能够找到项目名称。
在python中,我们可以做一些非常干净的事情,如:
x.name for x in categories[0].items where x.id = 1
在jQuery / JS中表达这个的最简洁,最简洁的方法是什么?
答案 0 :(得分:2)
使用Array
的{{3}}方法:
categories[0].items.filter( function(x){ return x.id == 1 });
编辑后编辑:
查找x = 1
categories[0].items.filter( function(x){ return x.id == 1 })[0].name;
如果您知道其中只有一个项目,或者您只想要第一个项目,或者将.filter
与.map
合并以获取名称列表:
categories[0].items.filter( function(x){ return x.id == 1 }).map( function(x){ return x.name })
小提琴:filter