Не может получить доступ к вложенному массиву в объекте
У меня есть объект, который представляет собой набор номеров индекса. Под каждым номером есть два свойства и массив. Я пытаюсь написать функцию, которая будет принимать аргументы номера индекса, свойства, которые будут обновлены, и значения. Пока я не могу понять, как получить доступ к массиву.
var myObject =
{
"0001":
{
"prop1": ""
"prop2": ""
"prop3": []
}
Для доступа к prop1 и prop2 я смог использовать оператор if:
if (prop == "prop1 ")
{
collection[id].prop1 = value;
}
else if(prop == "prop2")
{
collection[id].prop2 = value;
}
Когда я попытался добраться до массива, он развалился. Я попробовал несколько вещей, самым логичным из которых было:
if(prop == "prop3")
{
collection[id].prop3.push(value);
}
Куда я здесь не так?
1 ответ
Может быть, вам нужно сначала создать массив.
if (prop == "tracks") {
collection[id].tracks = collection[id].tracks || [];
collection[id].tracks.push(value);
}