在树状的angularjs模型中检索对象
retrieving an object in a tree-like angularjs model
下面是一个示例模型:
$scope.people=
[
{"id":1, "name":"bob", "pets":[
{"id":1, "name":"Jaco", "type":"parrot"},
{"id":2, "name":"coco", "type":"parrot"},
{"id":3, "name":"pluto", "type":"dog"}
]},
{"id":2, "name": "jason", "pets":[
{"id":4, "name":"coco", "type":"cat"}
]},
{"id":3, "name": "kurt", "pets":[
{"id":5, "name":"nemo", "type":"turtle"},
{"id":6, "name":"grnx", "type":"lynx"}
]}
];
是否有angularjs/javascript函数或最佳实践来检索bob的id,或找到动物的主人,或提取一个宠物记录与键/值模式?我想我可以编写自己的函数来查看模型(递归或for循环),但如果存在的话,我宁愿使用更高级的方法。
您会发现有各种查询JS数据结构的选项。我发现linq.js非常出色。你的每个例子都可以用一行linq.js代码完成。
//Get Id
return Enumerable.From($scope.people).First('$.name == "' + name + '"' ).id;
//Pet owners
return Enumerable.From($scope.people).Where('$.pets.length > 0').Select("$.name").ToArray();
//Pet Search
return Enumerable.From($scope.people).SelectMany('$.pets').Where('$.' + key + ' == "' + value + '"').Select('$.name').ToArray()
相关文章:
- 如何从类关系中检索对象列表
- 检索对象项的路径
- 正在根据ID从数组中检索对象
- 以文本形式检索对象元素中的SVG Dom
- AJAX来检索对象并将其存储在变量中
- 如何在帮助程序或事件中检索对象的内部_id
- 如何在 ydn-db 中检索对象的排序列表
- Javascript - 检索对象属性路径
- 从具有特定参数的数组中检索对象
- 如何从jsonString中检索对象
- 检索对象自己的标记
- 从URL检索对象/资源
- 如何从Google Apps脚本项目属性中存储和检索对象
- 如何从GTM数据层中检索对象
- JQueryAJAX检索对象数组
- 正在检索对象中嵌套的值
- 使用PHP从JSON中检索对象
- 如何从具有给定(键、值)对的长列表中检索对象
- 使用承诺从 mongo db 检索对象时出错
- 在树状的angularjs模型中检索对象