[英]Adding objects to array object
如果條件為真,我正在嘗試將對象添加到現有數組。
以下是我的代碼
RequestObj = [{
"parent1": {
"ob1": value,
"ob2": {
"key1": value,
"key2": value
},
},
},
{
"parent2": {
"ob1": value,
"ob2":{
"key1":value,
"key2": value
}
}
}]
這里我試圖在條件為真的情況下向RequestObj
數組添加一個對象。 我可以做RequestObj.push()
。 但我不知道如何在parent1
對象中添加。
if (key3 !== null) {
// add this below object to parent1 object
"ob3": {
"key1": value,
"key2": value
}
}
我無法找到任何解決方案。 請幫忙
向元素添加元素的方法是push
它。
// Create new object
var newObject = {
"ob3": {
"key1": value,
"key2": value
}
};
// Add new object to array
RequestObj.push(newObject);
您也可以直接將對象推入數組而不首先聲明變量:
// Add new object to array
RequestObj.push({
"ob3": {
"key1": value,
"key2": value
}
});
UPDATE
如果您沒有推入數組但是向數組內的對象添加新屬性,則需要知道數組內元素的位置,例如第一個元素的RequestObj[0]
。
然后在該元素中,您需要向parent1
對象添加一個新屬性( RequestObj[0].parent1
):
RequestObj[0].parent1.ob3 = {
"key1": "A",
"key2": "B"
};
var RequestObj = [{ "parent1": { "ob1": "A", "ob2": { "key1": "B", "key2": "C" }, }, "parent2": { "ob1": "D", "ob2": { "key1": "E", "key2": "F" } } }]; var key3 = 'somethingNotNull'; if (key3 !== null) { RequestObj[0].parent1.ob3 = { "key1": "A", "key2": "B" }; } console.log(RequestObj);
你應該循環迭代RequestObj
並按鍵parent1
查找對象。
為此你可以像這樣使用.filter
函數:
for(let i = 0; i < RequestObj.lenght; i++) {
let found_object = RequestObj[i].filter(function (r) {
return r == 'parent1'
});
}
然后,您可以通過found_object
執行操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.