原文地址:http://blog.csdn.net/panlingfan/article/details/45562893/
函數不需要 return,因為 json 對象會被函數直接修改。
var str1 = {"name": "apple", "sex": "21"}; // 參數:prop = 屬性,val = 值 function createJson(prop, val) { // 如果 val 被忽略 if(typeof val === "undefined") { // 刪除屬性 delete str1[prop]; } else { // 添加 或 修改 str1[prop] = val; } }
下面為測試
// 無改動,輸出 Object {name="apple", sex="21"} console.log(str1); // 添加屬性 color,值為 red createJson("color", "red"); // 輸出 Object {name="apple", sex="21", color="red"} console.log(str1); // 修改屬性 name 的值為 banana createJson("name", "banana"); // 輸出 Object {name="banana", sex="21", color="red"} console.log(str1); // 刪除屬性 sex createJson("sex"); // 輸出 Object {name="banana", color="red"} console.log(str1);
函數應該有三個參數的,第一個為 json 對象,但只寫了兩個,所以函數只能用於修改 str1
