如何使用angular.js向数组添加新键和值?

时间:2016-05-27 10:16:44

标签: javascript angularjs

我在数组中有3个对象,我想要添加ifContrbtd:false的第一个对象和我要添加ifContrbtd:true的剩余2个对象。我尝试过如下但是它将ifContrbtd:true添加到第二个和第三个对象,没有任何内容添加到第一个对象。

for (var key in res.result) {
    var ifContributed = false;
    if(res.result[key].newField != undefined){
        ifContributed = true;
        res.result[key]['ifContrbtd']=ifContributed;
    }               
}

2 个答案:

答案 0 :(得分:2)

您应该将分配移到if条件之外,以便为ifContributed = false的对象分配newField。现在,如果定义了什么,将不会有任何限制:

for (var key in res.result) {
  var ifContributed = false;
  if (res.result[key].newField != undefined) {
    ifContributed = true;
  }
  res.result[key]['ifContrbtd'] = ifContributed;
}

答案 1 :(得分:0)

你必须在if语句不在其中之后将赋值给res.result [key] [' ifContrbtd']。

只需3行就可以解决您的问题:

for (var key in res.result) {
    var ifContributed = (res.result[key].newField != undefined);
    res.result[key]['ifContrbtd'] = ifContributed;
}