题目:你将获得一个 JSON 对象,用来表示你的部分音乐专辑收藏。每张专辑都有几个属性和一个唯一的 id 号作为键值。并非所有专辑都有完整的信息。
你的函数必须始终返回整个音乐专辑集合对象。
如果属性prop不是"tracks"且值value不为空(""),则更新或设置该专辑属性的值value。
如果属性prop是"tracks",但是专辑没有"tracks"属性,则在添加值之前先给"tracks"创建一个空数组。
如果prop是"tracks",并且值value不为空(""), 把值value添加到tracks数组中。
如果值value为空(""),则删除专辑的这一属性prop
function updateRecords(records, id, prop, value) {
if (!value) {
delete records[id][prop];
return records;
}
if (prop !== 'tracks') {
records[id][prop] = value;
} else {
if (records[id][prop]) {
records[id][prop].push(value);
return records;
}
records[id][prop] = [value];
}
return records;
}