我正在尝试在json数组中存在的每个对象内动态添加一个对象。但是我做不到。我的对象被追加到json的末尾,这不是我想要的。
bindError
-----预期的输出是
jsonArray:any=[
{
"id": 1000,
"body": "some comment",
"postId": 1
},
{
"id": 2,
"body": "some comment",
"postId": 1
},
{
"id": 3,
"body": "some comment",
"postId": 1
}
]
selectFLag:any={"selected":"true"}
temArray:any;
learnJSONPArse()
{
for (var i = 0; this.jsonArray.length > i; i++)
{
Alert(this.jsonArray.length)
}
}
this.jsonArray.push(this.selectFLag)
答案 0 :(得分:0)
您的问题尚不清楚,但是听起来您想map
将数组中的每个项目都添加到一个新项目中。新项目与旧项目相同,但是assign
增加了一个附加属性。
如果是这样,这样的事情可能对您有用:
const objToAppend = { selected: true };
jsonArray.map(item => Object.assign(item, objToAppend));
参考: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map