Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 如何获得对象的和';性质_Angularjs - Fatal编程技术网

Angularjs 如何获得对象的和';性质

Angularjs 如何获得对象的和';性质,angularjs,Angularjs,我有一个函数,它可以在单击时添加/删除一个新的输入字段。每个字段都有自己的ng模型fam.age。该函数根据年龄计算保费。函数的结果是一个对象数组,如下所示: [ { "id":"fam1", "age":2, "btaccident":0.79, "btdisability":0.13, "btdeath":0.18, "premium":5 }, { "id":"fam2", "

我有一个函数,它可以在单击时添加/删除一个新的输入字段。每个字段都有自己的ng模型fam.age。该函数根据年龄计算保费。函数的结果是一个对象数组,如下所示:

[
   {
      "id":"fam1",
      "age":2,
      "btaccident":0.79,
      "btdisability":0.13,
      "btdeath":0.18,
      "premium":5
   },
   {
      "id":"fam2",
      "age":3,
      "btaccident":0.79,
      "btdisability":0.13,
      "btdeath":0.18,
      "premium":5
   }
]
对象的数量取决于单击“添加”按钮的次数

如何获取视图中每个阵列对象的“premium”之和

我试过作为休耕:

$scope.totalFamily = 0;

    $scope.getTotalPremium = function () {
      for (var i=0; i<$scope.familyMembers.length; i++) {
          $scope.totalFamily += $scope.familyMembers[i].premium;
      }  
    };
$scope.totalFamily=0;
$scope.getTotalPremium=函数(){

对于(var i=0;i可以使用angular.forEach()

演示
var-app=angular.module(“MyApp”,[]);
app.controller(“MyController”,函数($scope){
$scope.data=[
{
“id”:“fam1”,
“年龄”:2,
“意外事故”:0.79,
“残疾”:0.13,
“死亡”:0.18,
“溢价”:5
},
{
“id”:“fam2”,
“年龄”:3岁,
“意外事故”:0.79,
“残疾”:0.13,
“死亡”:0.18,
“溢价”:5
}
];
$scope.sum=函数(){
var合计=0;
angular.forEach($scope.data,函数(键,值){
合计+=关键溢价;
})
返回总数;
}
});

总和为:{{sum()}}

您可以使用angular.forEach()

演示
var-app=angular.module(“MyApp”,[]);
app.controller(“MyController”,函数($scope){
$scope.data=[
{
“id”:“fam1”,
“年龄”:2,
“意外事故”:0.79,
“残疾”:0.13,
“死亡”:0.18,
“溢价”:5
},
{
“id”:“fam2”,
“年龄”:3岁,
“意外事故”:0.79,
“残疾”:0.13,
“死亡”:0.18,
“溢价”:5
}
];
$scope.sum=函数(){
var合计=0;
angular.forEach($scope.data,函数(键,值){
合计+=关键溢价;
})
返回总数;
}
});

总和为:{{sum()}}

如果您没有使用下划线或Lodash之类的库,请使用
forEach
方法循环对象

 var obj = [{"id":"fam1","age":2,"btaccident":0.79,"btdisability":0.13,"btdeath":0.18, "premium": 5},{"id":"fam2","age":3,"btaccident":0.79,"btdisability":0.13,"btdeath":0.18, "premium": 5}];
    var sum = 0;

    obj.forEach(function(val){sum = sum+val.premium})

若并没有使用下划线或Lodash之类的库,请使用
forEach
maethod循环对象

 var obj = [{"id":"fam1","age":2,"btaccident":0.79,"btdisability":0.13,"btdeath":0.18, "premium": 5},{"id":"fam2","age":3,"btaccident":0.79,"btdisability":0.13,"btdeath":0.18, "premium": 5}];
    var sum = 0;

    obj.forEach(function(val){sum = sum+val.premium})

您为此尝试了什么?@Ved我已在原始帖子中添加了我的解决方案。请检查我或@sajeetharan的答案。@Ved@sajeetharan谢谢!我工作得很好。您得到了您的解决方案。您为此尝试了什么?@Ved我已在原始帖子中添加了我的解决方案。请检查我或@sajeetharan的答案。@Ved@sajeetharan than谢谢!我工作得很好。你有你的解决办法。