如何通过比较对象属性在列表中查找对象

时间:2013-06-10 13:14:56

标签: javascript angularjs

如何通过匹配对象属性来扫描对象数组以查找对象:

$scope.items = [
  { id: 1, name: 'one' }, 
  { id: 2, name: 'two' }, 
  { id: 3, name: 'three' }
];

$scope.item = $scope.items.find({ id: 1 }); // pseudo-code

3 个答案:

答案 0 :(得分:0)

您可以使用Angular的内置过滤器功能来执行搜索:

$scope.filteredItems = function() {
    return $filter($scope.items, id == filterID);
}

这是一个显示过滤器的小提琴:http://jsfiddle.net/wittersworld/xV8QT/

答案 1 :(得分:0)

您还可以使用filter这样的方法:

$scope.items.filter(function (item) {
    return item.id === 1; }
)

答案 2 :(得分:0)

我使用Underscore js

$scope.item = _.where($scope.items, { id: 1 });