如何使用Angular.js检查JSON对象中是否存在键值

时间:2016-10-24 12:55:41

标签: javascript angularjs json

我需要一个帮助。我有一些json值,我需要使用Angular.js检查key是否存在。我在下面解释我的代码。

var data=[{
    'checked':true,
    'name':'aaa'
},{
   'checked':true,
   'name':'bbb'
},{
   'name':'vvv'
}
]

在这里,我需要获取仅具有checked and checked==true的值。请帮帮我。

3 个答案:

答案 0 :(得分:1)

var checkedData = data.filter((item) => {
  return item.checked;
});

答案 1 :(得分:0)

您可以使用过滤器,您可以从中按特定键过滤。 在您的控制器中:

$scope.data=[{
    'checked':true,
    'name':'aaa'
},{
   'checked':true,
   'name':'bbb'
},{
   'name':'vvv'
}
]

在您看来:

{{data | filter:{'checked': 'true'} }}

答案 2 :(得分:0)

一般搜索功能(万一你不需要其他值。否则 - 使用过滤器)。

var check = function (data) {
    var checkResult = [];
    angular.forEach(data, function(item) {
        if (item.checked === true) {
            checkResult.push(item);
        }
    });
    return checkResult;
}

用法

check(data);

过滤(如果您只想渲染选中的项目)

<div ng-repeat="item in items | filter:{checked:true}"></div>