我的相片
劍俠鼻唄
如果一個人會不依著同伴的步伐前進,有可能是因為他聽到了另一種鼓聲。
檢視我的完整簡介

2006年6月28日 星期三

傳值呼叫VS.傳址呼叫測試(JavaScript物件)

傳值呼叫VS.傳址呼叫測試(JavaScript物件)


/*函數宣告
*********************/
function FuncA(num,bool,str){//測試基本型態資料
num++;
bool=false;
str="骷髏紳士";
document.write("在函數FuncA中的變數num值為:"+num+";變數bool值為"+bool+"。變數str的值為:"+str+"
");
}

function FuncB(objNum,objBool,objStr,man){//測試物件
objNum++;
objBool=true;
objStr="音樂家";
man.name="劍俠鼻唄";
document.write("在呼叫FuncB時:"+objNum+";"+objBool+";"+objStr+";"+man.name+"。
");
}

/*測試
*********************/

var num=1; //數值
var bool=true; //布林
var str="布魯克"; //字串

var objNum=new Number(1);//數值物件
var objBool=new Boolean(false);//布林物件
var objStr=new String("布魯克");//字串物件
var man=new Object(); //物件
man.name="布魯克";

document.write("呼叫FuncA前,變數num的值為:"+num+"。變數bool的值為:"+bool+"。變數str的值為:"+str+"
");
FuncA(num,bool,str);
document.write("呼叫FuncA後,變數num的值為:"+num+"。變數bool的值為:"+bool+"。變數str的值為:"+str+"
");

document.write("在呼叫FuncB前:"+objNum+";"+objBool+";"+objStr+";"+man.name+"。
");
FuncB(objNum,objBool,objStr,man);
document.write("在呼叫FuncB後:"+objNum+";"+objBool+";"+objStr+";"+man.name+"。");

/*測試結果
*********************************/


0 回響:

張貼留言

歡迎任何人發表高見,不歡迎任何跟自身見解無關的行為。
所有意見最早於週六週日才會得見,多謝包涵。不想公開的悄悄話請自行註明。