首页 > 代码库 > JS一星期旅途(第二天)

JS一星期旅途(第二天)

 

1.函数参数

按值将参数传递给某个函数时,将会创建该参数的单独副本(一个仅存在于该函数内部的副本)。

即使按引用传递对象和数组,如果在该函数中用一个新值直接覆盖它们,则在该函数之外也不会反映新值。

只有对对象属性或数组元素的更改才会在函数外可见。

 1 function Clobber(param) 
 2 {
 3     param = new Object();
 4     param.message = "This will not work";
 5 }
 6 
 7 function Update(param)
 8 {
 9     param.message = "I was changed";
10 }
11 
12 var obj = new Object();
13 obj.message = "This is the original";
14 
15 Clobber(obj);
16 window.alert(obj.message); //  "This is the original".
17 
18 Update(obj);
19 window.alert(obj.message); //  "I was changed".