![](/img/trans.png)
[英]How would you change values/add to nested object data inside array of objects using Javascript?
[英]Want to add an array of objects inside a nested object: Javascript
我需要將對象數組添加到結構如下所示的另一個對象中。
這里的arr是需要添加到“目標”對象的對象數組。
幫助將不勝感激
結構體:
var arr = [
{ field: "state", value: "value2"},
{ field: "city", value: "value3"}
];
該對象數組需要添加到以下結構的對象中:
var dest = {
"topic": "test",
"filter": {
"sequence": [
{
"field": "country",
"value": "value1",
}
]
},
"order": [
{
"field": "field1",
"order": "backward"
}
]
}
我想在“序列”中添加“ arr”字段,以便結果如下所示:
var dest = {
"topic": "test",
"filter": {
"sequence": [
{
"field": "country",
"value": "value1",
},
{
"field": "state",
"value": "value2",
},
{
"field": "city",
"value": "value3",
}
]
},
"order": [
{
"field": "field1",
"order": "backward"
}
]
}
使用forEach()
可以做到。
var arr = [ { field: "state", value: "value2"}, { field: "city", value: "value3"} ]; var dest = { "topic": "test", "filter": { "sequence": [ { "field": "country", "value": "value1", } ] }, "order": [ { "field": "field1", "order": "backward" } ] } arr.forEach(function (item) { dest.filter.sequence.push(item) }); console.log(dest)
ES6 傳播算子也可以用於合並
var arr = [ { field: "state", value: "value2"}, { field: "city", value: "value3"} ]; var dest = { "topic": "test", "filter": { "sequence": [ { "field": "country", "value": "value1", } ] }, "order": [ { "field": "field1", "order": "backward" } ] } dest.filter.sequence.push(...arr) console.log(dest)
您只需要使用以下代碼即可將數組插入對象。
arr.forEach( function(value, index, array) {
dest.filter.sequence.push(value);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.