将新对象添加到另一个对象的对象

时间:2019-12-11 00:28:39

标签: javascript

var obj = {}

obj.cats = {'name': 'Milo', 'age': 3} // first item

Object.assign(obj.cats, {'name': 'Simba', 'age': 2}) // add new item to obj.cats

console.log(obj) // result one item in obj.cats (Simba)

如何在此处添加到obj.cats中?我尝试过的所有解决方案都将覆盖cats

想要的结果:

obj {
 cats : {
     {'name': 'Milo', 'age': 3},
     {'name': 'Simba', 'age': 2}
 }
}

2 个答案:

答案 0 :(得分:3)

您可以使用对象数组:

var obj = {}

obj.cats = [{name: 'Milo', age: 3}] // first item

obj.cats.push({name: 'Simba', age: 2}) // add new item to obj.cats

console.log(obj) // result two items in obj.cats (Milo & Simba)

答案 1 :(得分:1)

您想要的结果无效,您可以尝试使用对象键:

var obj = {}

obj.cats = {1:{'name': 'Milo', 'age': 3}} // first item

Object.assign(obj.cats, {2:{'name': 'Simba', 'age': 2}}) // add new item to obj.cats

console.log(obj) // result one item in obj.cats (Simba)