3 回答

TA貢獻(xiàn)1765條經(jīng)驗(yàn) 獲得超5個贊
問題1,JS是弱類型的語言,你的理解是對的,
var evnt=evnt ||window.event;
等同于
var evnt=evnt?evnt||window.event;
就象很多代碼里可以看到
function abc(obj){
if(obj)//如果obj是一個對象,返回true,否則(比如是null或undefined)返回false
}
問題2,JS的函數(shù)有個特性,就是參數(shù)可以定義,也可以不定義,即使定義了也可以不用,比如:
function abc(str){
alert(1);
}
上面這個函數(shù),你直接調(diào)用abc();也可以執(zhí)行,沒有任何錯誤.
function abc(str){
alert(str);
}
這個函數(shù)如果不用參數(shù)就會出錯了,因?yàn)榇a里使用了str這個參數(shù),所以調(diào)用abc("1112")沒有問題,但是調(diào)用abc()就不行了.
還有:
function abc(){
if(arguments.length>1){alert(arguments[0]);}
if(arguments.length>2){alert(arguments[1]);}
}
上面這個函數(shù)沒有定義任何參數(shù),你可以試試:
調(diào)用:abc();//不傳參
調(diào)用:abc('11');//一個參數(shù)
調(diào)用:abc('11','22');//2個參數(shù).
相信你能明白了吧.

TA貢獻(xiàn)1942條經(jīng)驗(yàn) 獲得超3個贊
問題1,JS是弱類型的語言,你的理解是對的,
var evnt=evnt ||window.event;
等同于
var evnt=evnt?evnt||window.event;
就象很多代碼里可以看到
function abc(obj){
if(obj)//如果obj是一個對象,返回true,否則(比如是null或undefined)返回false
}
問題2,JS的函數(shù)有個特性,就是參數(shù)可以定義,也可以不定義,即使定義了也可以不用,比如:
function abc(str){
alert(1);
}
上面這個函數(shù),你直接調(diào)用abc();也可以執(zhí)行,沒有任何錯誤.
function abc(str){
alert(str);
}
這個函數(shù)如果不用參數(shù)就會出錯了,因?yàn)榇a里使用了str這個參數(shù),所以調(diào)用abc("1112")沒有問題,但是調(diào)用abc()就不行了.
還有:
function abc(){
if(arguments.length>1){alert(arguments[0]);}
if(arguments.length>2){alert(arguments[1]);}
}
上面這個函數(shù)沒有定義任何參數(shù),你可以試試:
調(diào)用:abc();//不傳參
調(diào)用:abc('11');//一個參數(shù)
調(diào)用:abc('11','22');//2個參數(shù).
相信你能明白了吧.
- 3 回答
- 0 關(guān)注
- 1421 瀏覽
添加回答
舉報