Коллекция записей
Вам предоставляется объект JSON, представляющий часть вашей коллекции музыкальных альбомов. Каждый альбом имеет несколько свойств и уникальный идентификационный номер в качестве ключа. Не все альбомы имеют полную информацию.
Внимание! В данном задании не следует использовать функцию форматирования кода, так как меняется формат заданного объекта, что приводит к невозможности выполнения задания, так как по заданию исходная коллекция не должна подвергаться изменению.
Напишите функцию updateRecords
, которая принимает id
альбома (например, 2548
), свойство
prop
(например, artist
или tracks
) и value
(например,
Addicted to Love
) для изменения данных в этой коллекции.
- Ваша функция всегда должна возвращать весь объект
collection
. - Если
prop
не являетсяtracks
, аvalue
не пусто (""
), обновите или установитеvalue
для свойстваprop
этого альбома. - Если
prop
являетсяtracks
но альбом не имеет свойстваtracks
, создайте пустой массив перед добавлением нового значения в соответствующее свойство альбома. - Если
prop
- этоtracks
аvalue
не пусто (""
), добавьтеvalue
в конец существующего массиваtracks
. - Если
value
пусто (""
), удалите данное свойствоprop
из альбома.
Советы
Используйте
bracket notation
при доступе к свойствам объекта с переменными.
Array.prototype.push() - метод массива, который позволяет добавлять новые элементы к массиву.
Также освежите свои знания по Манипулированию сложными объектами,.