如何过滤AngularJs对象中的列表

时间:2017-03-01 12:07:07

标签: javascript angularjs arrays object filter

我有一个像这样的对象:

var obj ={
name:'vince',
list:[{area:'bxl'},
      {area:'fra'},
      {area:'ita'},
      {shop[
            {name:'shop1'},
            {name:'shop2}]}]}

如何过滤obj中包含的列表对象? 我尝试了很多解决方案,但没办法。 谢谢!

2 个答案:

答案 0 :(得分: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
});

答案 1 :(得分:0)

此示例过滤了list中的obj。返回area === 'fra'

的所有对象
obj.list = obj.list.filter(function (item) {
    if (item.area === 'fra') {
        return true;
    }
    return false;
});