Angularjs 如何在Angular JS中按属性计算项目数?

Angularjs 如何在Angular JS中按属性计算项目数?,angularjs,Angularjs,在我的controller.js中,我有一个数组'arr' 像这样: $scope.arr = [ {block: 0}, {block: 1}, {block: 1}, ] 我想使用block:1计算项目,但不使用ng repeat? 我试过: 试试这个: {{ ( arr | filter: { block: 1 } ).length }} arr | filter:{block:1}将返回与您的条件匹配的数组。这是使用filter的示例 Html <div ng

在我的controller.js中,我有一个数组'arr'

像这样:

$scope.arr = [
   {block: 0},
   {block: 1},
   {block: 1},
]
我想使用
block:1
计算项目,但不使用
ng repeat
? 我试过:

试试这个:

{{ ( arr | filter: { block: 1 } ).length }}

arr | filter:{block:1}
将返回与您的条件匹配的数组。

这是使用filter的示例

Html

<div ng-controller="MyCtrl">
    Amount is {{(arr|amount)}}

</div>

金额为{(arr | Amount)}
Javascript

var myApp = angular.module('myApp',[]);

function MyCtrl($scope) {

    $scope.arr = [
       {block: 0},
       {block: 1},
       {block: 1},
    ]
}

 myApp.filter("amount", function(){
    return function(array){     
        var amount = 0;
        for(var i = 0; i < array.length; i++){ 
            if(array[i].block == 1)
                amount+= 1;
        }

        return amount;
    };
});
var myApp=angular.module('myApp',[]);
函数MyCtrl($scope){
$scope.arr=[
{块:0},
{block:1},
{block:1},
]
}
myApp.filter(“金额”,函数(){
返回函数(数组){
风险价值金额=0;
对于(var i=0;i

这里有一个例子

不是答案,但您拼写了
长度
错误检查您的答案可能是它的作品
var myApp = angular.module('myApp',[]);

function MyCtrl($scope) {

    $scope.arr = [
       {block: 0},
       {block: 1},
       {block: 1},
    ]
}

 myApp.filter("amount", function(){
    return function(array){     
        var amount = 0;
        for(var i = 0; i < array.length; i++){ 
            if(array[i].block == 1)
                amount+= 1;
        }

        return amount;
    };
});