var collection = {
"5439": {
"album": "ABBA Gold"
}
};
function updateRecords(id, prop, value) {
if(prop !== "tracks" && value !== ""){
collection[id].prop=value;
}
return collection;
}
updateRecords(5439, "artist", "ABBA");
爲什麼結果是Object { album="ABBA Gold", prop="ABBA"}
而不是Object { album="ABBA Gold",artist="ABBA"}
?
當解析collection[id].prop=value;
,道具的價值是藝術家,id的值是5439,所以collection[id].prop=value;
應解析成collection[5439].artist="ABBA";
,爲什麼不呢?爲什麼函數調用時無法正確傳遞參數?
在這裏閱讀答案:http://stackoverflow.com/questions/4968406/JavaScript的財產ACCES s-dot-notation-vs-brackets – epascarello