如何在数组内嵌套的对象中添加项目

时间:2019-07-07 12:16:12

标签: javascript arrays object

我尝试通过使用dogs_info.name.push(_)在字段“名称”和“品种”中分别添加新项,但出现错误:

  

无法读取未定义的属性“名称”

我希望有一个深入的解决方案。

var dogs_info = [
    {
        name : "rusty",
        breed : "corgi"
    },
    {
        name: "snoopy",
        breed: "pomperian"
    },
    {
        name: "ropper",
        breed: "husky"
    },
    {
        name: "maya",
        breed: "pomsky"
    },
    {
        name: "lara",
        breed: "alskan malamute"
    }
]

1 个答案:

答案 0 :(得分:3)

dogs_info没有名为name的属性,因此dogs_info.name给您undefined

dogs_info是一个对象数组。这些对象的属性不是数组。

听起来您可能只想向数组添加一个新条目,例如:

dogs_info.push({
    name: "fido",
    breed: "wee brun dug"
});

请注意,您的示例中没有“嵌套数组”。您只有一个数组,其中包含具有namebreed属性(其值为字符串)的对象。