一、引用
複製代碼 代碼如下://產生一個數組對象
var items = new Array('1','2','3');
//使一個引用指向該對象
var itemRef = items;
items.push('4');
//items 與 itemRef指向同一對象
alert(items.length === itemRef.length);
// 修改對象會產生一個新對象
var item = 'test';
var itemRef = item;
item+='ing';
//此時item和itemRef不再指向同一個對象
alert(item != itemRef);
二、判斷傳入參數的數量及類型 複製代碼 代碼如下://arguments 能用了判斷函數參數的個數
function sendMessage(msg,obj){
if(arguments.length ==2)
obj.handleMsg(msg);
else
alert(msg);
}
判斷類型可以使用typeof和javascript對象的constructor屬性複製代碼 代碼如下://typeof能用一個字串表達變數的類型名
//判斷一個變數num是否是string 類型
if(typeof num == 'string')
//但是typeof對都是object array類型不能區分
//利用constructor 判讀num是否是String類型
if(num.constructor == String)
if(num.constructor == Array)
//該函數判斷一個函數的變數的長度和變數類型
function strict(types,args){
if(types.length != args.length){
throw "參數個數無效";
}
for(var i=0; i<args.length; i++){
if(args[i].constructor != types[i]){
throw '參數類型不符'
}
}
}