我正在一个Angular项目中,我想捕获所有的encCharge并将它们添加到我的cf中,并使用for函数将所有的encCharge总计在一起。
这是我的数组:
produits = [
{
cf1: {
cfTitle: 'prInfiniti30j',
encCharge: 12345.75,
encBonifie: 47730.56
},
cf2: {
cfTitle: 'prInfiniti30j',
encCharge: 18400.94,
encBonifie: 38268.56
},
cf3: {
cfTitle: 'prInfiniti30j',
encCharge: 18392.00,
encBonifie: 30570.56
},
cf4: {
cfTitle: 'prInfiniti30j',
encCharge: 0.00,
encBonifie: 15230.56
},
},
];
这是我的功能,也是我尝试过的事情,但是我无法找到想要的东西。
ngOnInit(){
for (let testing in this.produits[0]) {
console.log(this.produits[0].cf1.encBonifie);
// console.log(this.produits[0].testing.encCharge);
// console.log(testing.encCharge);
}`
这是我期望的结果:
let totalEncCharge = this.produits[0].cf1.encCharge +
this.produits[0].cf2.encCharge + this.produits[0].cf3.encCharge +
this.produits[0].cf4.encCharge ;
console.log(totalEncCharge);
谢谢您的帮助
最佳答案
您也可以尝试使用Object.keys
var total = 0;
Object.keys(this.produits[0]).map(item=>{
total+=this.produits[0][item].encCharge });
console.log(total);
*编辑:如果您不希望返回任何值,而是设置其他属性,如示例中所示,最好使用
forEach
而不是map