// 初始化变量 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" } }; // 深拷贝 collection,用于测试 var collectionCopy = JSON.parse(JSON.stringify(collection)); // 请只修改这条注释以下的代码 function update(id, prop, value) { //从这里开始是我写的!!!!! if(value!=''||prop!="tracks"){ collection[id][prop]=value; }else if(value==""){ delete collection[id][prop]; }else if(value!=''||prop=="tracks"){ collection[id][prop].push(value); } return collection; } // 你可以修改这一行来测试你的代码 update(5439, "artist", "ABBA");
1、update(5439, "artist", "ABBA") 之后, artist 应该为"ABBA"
2、update(2548, "artist", "") 之后,artist 应该不存在
3、update(1245, "tracks", "Addicted to Love") 之后, tracks的最后一个元素应该是"Addicted to Love"
4、update(2548, "tracks", "") 之后,tracks 应该不存在
这是我在网上做的一道题目 但是我怎么也想不明白我到底哪里写错了。。。
下面的测试只有1和4能正确显示,,各位大佬棒棒我。。。
黄沛元
qq_慕粉5384370