在lodash中是否有一种方法可以找到匹配的名称(假设是唯一的)并在关联位置的数组上进行迭代,即最初返回匹配元素的数组位(filter?pickBy?等)并在其上进行迭代。 / p>
var locations = [ {name:"dave", location:["home","work","pub"]},
{name:"alice", location:["school","college","university"]},
{name:"fred", location:["us","uk"]} ];
搜索“ fred”,应返回:
0:us
1:uk
我可以使用_.filter和嵌套的_.forEach来做到这一点,但希望对此做得更好:
// _.filter returns the entire element that matches name=who
_.forEach(_.filter( locations, { name:who } ), function(pv,pk){
// returns the array of locations for "who" in 'pv'
_.forEach(pv.location, function(value,key) {
// iterate through the location array one at a time
console.log ( key+":"+value );
})
});
答案 0 :(得分:0)
尚不清楚您需要什么,因此有两个选择,都不需要lodash:
button.setImage(nil, for: .normal)
答案 1 :(得分:0)
// _.filter returns the entire element that matches name=who
_.forEach(_.find( locations, { name:"fred" } ).location, function(value,key){
// iterate through the location array one at a time
console.log ( key+":"+value );
});