if的判斷
if 判斷的語法如下:
1.if (//條件表達(dá)式){
//執(zhí)行語句
}
2.if (//條件表達(dá)式){
//成立執(zhí)行語句
} esle {
//不成立執(zhí)行語句
}
3.if(條件){
//成立執(zhí)行語句
} esle if {
//成立執(zhí)行語句
}
esle if {
//成立執(zhí)行語句
} esle {
//最后默認(rèn)執(zhí)行的語句
}
而在if條件中是6種由數(shù)據(jù)類型 : 數(shù)值、字符串、布爾值、對(duì)象、undefined和null以及其中出現(xiàn)的運(yùn)算符組成,根據(jù)運(yùn)算規(guī)則對(duì)條件進(jìn)行運(yùn)算,但是最終的運(yùn)算結(jié)果需要轉(zhuǎn)換成布爾值,然后再進(jìn)行判斷TRUE還是FALSE,再執(zhí)行代碼。所以關(guān)鍵的就是了解這6種數(shù)據(jù)類型是怎么轉(zhuǎn)化為布爾值的,以及運(yùn)算符的優(yōu)先級(jí)和運(yùn)算規(guī)則。
我們可以記住一些常用的規(guī)則以便幫助我們進(jìn)行判斷:
- 取反運(yùn)算符(!),用于將布爾值變?yōu)橄喾粗担磘rue變成false,false變成true。
- 且運(yùn)算符(&&)的運(yùn)算規(guī)則是:如果第一個(gè)運(yùn)算子的布爾值為true,則返回第二個(gè)運(yùn)算子的值(注意是值,不是布爾值);如果第一個(gè)運(yùn)算子的布爾值為false,則直接返回第一個(gè)運(yùn)算子的值,且不再對(duì)第二個(gè)運(yùn)算子求值。
- 或運(yùn)算符(||)的運(yùn)算規(guī)則是:如果第一個(gè)運(yùn)算子的布爾值為true,則返回第一個(gè)運(yùn)算子的值,且不再對(duì)第二個(gè)運(yùn)算子求值;如果第一個(gè)運(yùn)算子的布爾值為false,則返回第二個(gè)運(yùn)算子的值。
- 除此之外還有很多運(yùn)算符及其規(guī)則,在編程的過程中如果忘記了,應(yīng)該及時(shí)去查閱相應(yīng)的文檔。
變量相等的判斷
- == 操作符
“相等”操作符,簡單判斷2個(gè)變量值是否相等,變量類型不一致時(shí),會(huì)做類型轉(zhuǎn)換,即忽略變量的類型進(jìn)行比較 - === 操作符
“絕對(duì)相等”操作符,先比較2個(gè)變量類型是否一致,不一致返回false,一致時(shí),再比較2個(gè)變量的值是否相等 - 舉例說明:
var score= '123' == 123; // true
var score= 123 == 123; // true
var score= '123' === 123; //false 他們值相等,但是類不相等,所以為false。