Как добавить элемент в объекты, вложенные в массивы - PullRequest
1 голос
/ 07 июля 2019

Я пытаюсь добавить новые элементы в поле «имя» и «порода» по отдельности, используя dogs_info.name.push(_), но получаю сообщение об ошибке:

Невозможно прочитать свойство 'name' из неопределенного

Я надеюсь на всестороннее решение.

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 Ответ

3 голосов
/ 07 июля 2019

dogs_info не имеет свойства с именем name, поэтому dogs_info.name дает вам undefined.

dogs_info - массив объектов. Свойства этих объектов не являются массивами.

Звучит так, как будто вы можете просто захотеть добавить новую запись в массив, например ::

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

Обратите внимание, что в вашем примере нет "вложенных массивов". У вас есть один массив, который содержит объекты со свойствами name и breed (значения которых являются строками).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...