在Javascript腳本中,參數的引用原則:引用的參數內部(如屬性)可以修改,但參數對應的參考(reference)不能修改。
一個測試範例如下:
//dosomething1,對於引用,變數本身不可以修改,但變數內部結構可以修改
function dosomething1(a){
a = 'try';
}
//檢定1
function test1(){
var a = {a:'test',b:'is',c:'ok'};
dosomething1( a);
alert(a.a);
}
//dosomething2
function dosomething2(v){
v.a = v.a '!!!'; //修改引用變數的屬性,修改成功
v = 'try'; //試圖修改變數引用,修改失敗
}
//測試2
function test2(a){
var a = {a:' test',b:'is',c:'ok'};
dosomething2(a);
alert(a.a);
}
test2();