在Javascript腳本中,參數的引用原則:引用的參數內部(如屬性)可以修改,但參數對應的引用(reference)不能修改。
一個測試例子如下:
復制代碼 代碼如下:
<script language="javascript">
//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();
</script>