AngularJS检查对象数组中的字段是否存在

ted*_*123 1 javascript arrays loops angularjs

我有这样的数据模型:

var array =  [{id:1, name:"foo"}, {id:2, name:"bar"}, {id:3 name:"september"}];
Run Code Online (Sandbox Code Playgroud)

我想遍历数组,看看id:3是否存在我该怎么做?

小智 9

只需使用AngularJS 过滤器,这些就是为此目的而制作的:

var results = $filter('filter')(array, {id : 3}, true);
Run Code Online (Sandbox Code Playgroud)

results将包含一个属性id等于的对象数组(可能有多个)3.

如果长度results为零,则没有与过滤器匹配的元素.
如果您知道,只有一种可能的结果,您可以直接检索它results[0].

使用过滤器的优点是,您可以通过扩展过滤器表达式轻松过滤多个属性值{id : 3}.

干杯,