使用 lodash 方法 flatten 和 find 在 json 对象中查找值
Find a value in json object using lodash methods flatten and find
我想使用 lodash 找到一个 ID 为 3229 的团队。我尝试关注但没有返回任何内容。
var team = _.chain(data.teams)
.flatten("divisionTeams")
.find({"id":3229})
.value();
这是我的插件代码。
http://plnkr.co/edit/UDwzRkX3zkYjyf8UwO7I
对于 Json 数据,请参阅 Plunker 中的文件 data.js。
请注意,我无法更改 json 数据,因为我正在调用测试 api。
flatten
不接受该论点,参见 docs。您需要 map
或 pluck
divisionTeams
.
_.chain(data.teams)
.pluck('divisionTeams')
.flatten()
.find({id: 3232})
.value();
所以如果要求只使用flatten、find和lodash,那会很困难。但是使用 for 循环来获取部门团队可能就是您要问的。
var teams = [];
for(var e of data.teams) {
teams.push(e.divisionTeams);
}
var blah = _.flatten(teams, true);
console.log(_.find(blah, function(item) { return item.id == 3222; }));
我想使用 lodash 找到一个 ID 为 3229 的团队。我尝试关注但没有返回任何内容。
var team = _.chain(data.teams)
.flatten("divisionTeams")
.find({"id":3229})
.value();
这是我的插件代码。
http://plnkr.co/edit/UDwzRkX3zkYjyf8UwO7I
对于 Json 数据,请参阅 Plunker 中的文件 data.js。
请注意,我无法更改 json 数据,因为我正在调用测试 api。
flatten
不接受该论点,参见 docs。您需要 map
或 pluck
divisionTeams
.
_.chain(data.teams)
.pluck('divisionTeams')
.flatten()
.find({id: 3232})
.value();
所以如果要求只使用flatten、find和lodash,那会很困难。但是使用 for 循环来获取部门团队可能就是您要问的。
var teams = [];
for(var e of data.teams) {
teams.push(e.divisionTeams);
}
var blah = _.flatten(teams, true);
console.log(_.find(blah, function(item) { return item.id == 3222; }));