如何从Angular中的数组中提取对象?
问题描述:
$scope.people = [
{'name':'james'},
{'name':'ann'}
];
功能
$scope.user = $filter('filter')($scope.people, function(user){
return user.name == 'james';
});
查看
{{user | json}}
但是,在图(并在控制台)我得到的数组[]
与对象的内部。我只想要对象,而不是数组。所以,我可以做这样的事情:在JavaScript
{{user.name}}
答
筛选记录从数组或获取数组的一个记录,该功能提供的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]
表示我们只是想先记录哪个匹配。我们不想要数组。
当你过滤一个数组时,你得到一个数组作为结果....并且一个JavaScript数组是一个对象,那么又是什么问题? – Tibrogargan