簡體   English   中英

是否可以將對象推入現有對象的屬性中

[英]Is it possible to push an object into in an existing object's property

我想附加到這個對象:

var obj =
{
   "myKey":
   {
       "subkey": [1,2,3]
   }
};

這是我想要附加到obj的其他子項的obj

var addKeys = {
   "subkey2" [3,4,5],
   "subkey3" [5,6,7]
}

我想做一些像obj.myKey.push(addKeys); 但我知道這只適用於陣列。 我的最終對象應該看起來像這樣:

var obj =
{
   "myKey":
   {
       "subkey": [1,2,3],
       "subkey2" [3,4,5],
       "subkey3" [5,6,7]
   }
};

  var obj = { "myKey": { "subkey": [1,2,3] } }; var addKeys = { "subkey2": [3,4,5], "subkey3": [5,6,7] }; Object.assign(obj.myKey, addKeys) console.log(obj); 

Object.assign將覆蓋第一個參數。 它被稱為“破壞性”操作。 如果要合並對象並返回一個新對象:

  var obj = { "myKey": { "subkey": [1,2,3] } }; var addKeys = { "subkey2": [3,4,5], "subkey3": [5,6,7] }; var merged = Object.assign({}, obj.myKey, addKeys) console.log(merged); console.log(obj); 

您正在尋找的是Object.assign()

嘗試這個:

obj["myKey"] = Object.assign(obj["myKey"], addKeys)

MDN參考

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM