我想向我的 JSON 数组添加一个新的 object.key。
为此,我定义了一个新变量 var result = {"bad":1}
然后我插入
像这样的项目 skippedData.push(item.metadata["pico:record"]["dc:description"],{result});
作为 JSON 输出,我有:
[
{
"skippedData": [
{
"_": "Lungo le mura, al posto del baluardo nord-est, la cosiddetta Fortezza medicea è un degradato complesso di corpi di fabbrica eretti nella 2ª metà del '500 attorno al trecentesco cassero senese.",
"$": {
"xml:lang": "it"
}
},
{
"result": {
"bad": 1
}
}
]
}
]
这是错误的,因为我有一个新的“结果”对象而不是“结果”对象键。
我的预期输出应该是:
[
{
"skippedData": [
{
"_": "Lungo le mura, al posto del baluardo nord-est, la cosiddetta Fortezza medicea è un degradato complesso di corpi di fabbrica eretti nella 2ª metà del '500 attorno al trecentesco cassero senese.",
"$": {
"xml:lang": "it"
},
"result": {
"bad": 1
}
}
]
}
]
我做错了什么?
问候
最佳答案
skippedData
是一个数组。
您正在使用push method这是向数组添加元素。
据我了解,您想在一个对象中添加来自两个源的数据,因此您可以使用这种方式使用 spread 在那里构建新对象。 :
skippedData.push({
...item.metadata["pico:record"]["dc:description"],
...{result}
});
skippedData.push(Object.assign(
{},
item.metadata["pico:record"]["dc:description"],
{result}
));
如果你想确切地修改数组中已经存在的对象,你可以通过键引用它,例如
skippedData[0].result = result
关于javascript - 如何在 JavaScript 中将 object.key 添加到现有数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58912789/