函数不需要 return,因为 json 对象会被函数直接修改。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
var
str1 = {
"name"
:
"apple"
,
"sex"
:
"21"
};
// 参数:prop = 属性,val = 值
function
createJson(prop, val) {
// 如果 val 被忽略
if
(
typeof
val ===
"undefined"
) {
// 删除属性
delete
str1[prop];
}
else
{
// 添加 或 修改
str1[prop] = val;
}
}
|
下面为测试
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
// 无改动,输出 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);
|