如何从Angular中的数组中提取对象?

时间:2016-11-08 01:06:32

标签: javascript angularjs arrays

数据

https://api.trello.com/1/member/me/boards?key=x&token=y&filter=open

功能

$scope.people = [
  {'name':'james'},
  {'name':'ann'}
];

查看

$scope.user = $filter('filter')($scope.people, function(user){
  return user.name == 'james';
});

但是,在视图中(以及在控制台中),我在对象内部获得了一个数组{{user | json}} 。我只想要对象,而不是数组。所以我可以做以下事情:

[]

1 个答案:

答案 0 :(得分:0)

从JavaScript中的数组中过滤记录或获取数组的单个记录,此功能提供了javascript,您不需要任何AngularJS代码。每当你只能通过javascript做,我建议不要使用angularJS过滤器。如果要重用它,请创建自己的AngularJS过滤器。

您可以通过以下代码从数组中提取对象

数据

$scope.people = [
  {'name':'james'},
  {'name':'ann'}
];

功能

$scope.user = function(username) {
    return $scope.people.filter(function(obj) {
        return obj.name === username;
    })[0];
}

查看

{{user('james') | json}}

filter是数组的javascript原型,我们可以按自定义条件过滤一些记录。 [0]表示我们只想首先记录哪个匹配。我们不想要数组。