qq_瀟_2
2017-03-09 08:55:10
這是提示:有一個JSON對象,代表著你的專輯集。每一張專輯由一個唯一的id標識,并具有多種屬性。但并非所有的專輯都有完整的信息。寫一個函數(shù),它有個三個參數(shù),id、prop、value。如果 value !='' 而且prop != 'tracks',collectionCopy[id][prop]=value;。如果 value !='' 而且prop == 'tracks',collectionCopy[id][prop].push(value);。如果 value == '' ,delete collectionCopy[id][prop];。這是要求:update(5439, "artist", "ABBA")?之后,?artist?應該為"ABBA"update(2548, "artist", "")?之后,?artist?應該不存在update(1245, "tracks", "Addicted to Love")?之后,tracks?的最后一個元素應該是"Addicted to Love"update(2548, "tracks", "")?之后,?tracks?應該不存在我代碼這樣不知道那里有問題:var collection = {? ? 2548: {? ? ? album: "Slippery When Wet",? ? ? artist: "Bon Jovi",? ? ? tracks: [?? ? ? ? "Let It Rock",?? ? ? ? "You Give Love a Bad Name"?? ? ? ]? ? },? ? 2468: {? ? ? album: "1999",? ? ? artist: "Prince",? ? ? tracks: [?? ? ? ? "1999",?? ? ? ? "Little Red Corvette"?? ? ? ]? ? },? ? 1245: {? ? ? artist: "Robert Palmer",? ? ? tracks: [ ]? ? },? ? 5439: {? ? ? album: "ABBA Gold"? ? }};var collectionCopy = JSON.parse(JSON.stringify(collection));function update(id, prop, value) {? if(value != " " && prop != "tracks"){? ? collectionCopy[id][prop] = value;? }else if ( value != ' ' && prop == 'tracks'){? ? collectionCopy[id][prop].push(value);? }else if (value == ' '){? ? delete colectionCopy[id][prop];? }? return collection;}update(5439, "artist", "ABBA");
6 回答

離歌笑_0002
TA貢獻1條經(jīng)驗 獲得超0個贊
function update(id, prop, value) {
? if(value !==''&&prop !=='tracks'){
? collectionCopy[id][prop]=value;
}
else if(value !==''&&prop =='tracks'){
? collectionCopy[id][prop].push(value);
}
else if(value ===''){
? delete collectionCopy[id][prop];
}
? return collection;
}
單引號或者雙引號內(nèi)不留空格

qq_怠惰_04293838
TA貢獻1條經(jīng)驗 獲得超0個贊
不用寫else, 直接if, 應該是最先判斷value是不是空, ?這個是執(zhí)行順序的問題, 然后應該是return?collectionCopy,而不是collection
添加回答
舉報
0/150
提交
取消