【问题标题】:How to filter a list in an object AngularJs如何过滤对象AngularJs中的列表
【发布时间】:2017-07-20 18:06:57
【问题描述】:
我有一个这样的对象:
var obj ={
name:'vince',
list:[{area:'bxl'},
{area:'fra'},
{area:'ita'},
{shop[
{name:'shop1'},
{name:'shop2}]}]}
如何过滤包含在 obj 中的列表对象?
我尝试了很多解决方案,但没有办法。
谢谢!
【问题讨论】:
标签:
javascript
angularjs
arrays
object
filter
【解决方案1】:
您可以像这样过滤列表:
var list = [1, 2, 3, 4, 5];
list.filter(function(element) {
return element < 3; // return true or false
});
在传递的函数中,根据当前元素返回一个布尔值。在这种情况下,我会检查每个元素是否小于 3。
结果是[1, 2]。
所以在你的情况下你可以这样做:
obj.list.filter(function(element) {
// Do your check and return boolean
});
【解决方案2】:
此示例过滤obj 中的list。返回所有带有area === 'fra'的对象
obj.list = obj.list.filter(function (item) {
if (item.area === 'fra') {
return true;
}
return false;
});