我有一个json数组
var testArr=[{name:"name1",age:20},{name:"name1",age:20},{name:"name1",age:20}]
我如何在testArr中插入项目“Uid”,使其看起来像这样
var testArr=[{name:"name1",age:20,uid:1},{name:"name1",age:20,uid:2},{name:"name1",age:20,uid:3}]
我尝试了以下JS代码,但似乎在最后添加了它
var testArr=[{name:"name1",age:20},{name:"name1",age:20},{name:"name1",age:20}];
var loopCycle = (testArr.length);
for(i=0; i < loopCycle ; i++){
testArr.push({uID:i+1})
}
console.log(testArr)
谢谢
最佳答案
您的问题在这里:
testArr.push({uID:i+1})
对于数组中的每个元素,您都将创建一个新元素(
{uID:i+1}
)。您需要访问JSON对象并创建一个新属性。试试这个:var testArr=[{name:"name1",age:20},{name:"name1",age:20},{name:"name1",age:20}];
var loopCycle = (testArr.length);
for(i=0; i < loopCycle ; i++){
testArr[i]['uid'] = i+1;
}
console.log(testArr);
如果要使用 Angular 方式进行操作,请尝试以下操作:
angular.forEach(testArr, function (x,idx) { x.uid = idx+1; });