我有对象数组:
array = [
{name: 'name'},
{name: 'name'},
{name: 'name'},
{name: 'name'},
]
我想向每个密钥添加密钥:“ 123”,这样就可以了:
array = [
{name: 'name', key: '123'},
{name: 'name', key: '123'},
{name: 'name', key: '123'},
{name: 'name', key: '123'},
]
我尝试过的:
checked = false;
this.editObj.forEach(item => item.push(this.checked))
错误:item.push不是函数。
但是它不起作用。如何以正确的方式做到这一点?
答案 0 :(得分:2)
您应该这样做:
this.editObj.forEach(item => item["key"]= "123");
console.log(this.editObj);
答案 1 :(得分:2)
const arr = [
{name: 'name'},
{name: 'name'},
{name: 'name'},
{name: 'name'},
]
const arr2 = arr.map(x => ({...x , key: '123'}));
答案 2 :(得分:1)
您的代码无法正常工作,因为您在对象而非数组上使用了.push()
。
试试这个:
this.editObj.forEach(item => item["key"] = this.checked);
答案 3 :(得分:1)
您可以尝试创建自定义词典
array = [
{name: 'name'},
{name: 'name'},
{name: 'name'},
{name: 'name'},
]
var dict = []; // create an empty dictionary
for (i = 0; i < array.length; i++) {
dict.push({
key: "123",
value: array[i].name
});
}
console.log(dict);