假設一個場景,在我們的面前有左右兩條路,而我們只能選擇其中的一條,我們無非就兩種選擇,一種是走左邊的路,否則就是走右邊的路,不允許耍賴不走,只能在同一時間選擇一條路,將生活中的這一經驗轉換在js中就是我們今天要學的if條件語句。
一、if條件語句
1、語法:
if( condition ) statement1 else statement2;
註:A、condition是條件,statement是需要執行的循環語句。
B、當condition的條件滿足時,執行statement1語句,不滿足時,執行statement2語句。
C、我們也可以不書寫else語句,只書寫前半部分語句,但是那樣的話如果條件不滿足,那麼statement語句永遠也不會執行。
D、多個if語句連用
我們使用昨天學過的prompt( )和 alert( )來做一個簡單的小程序。
要求:用戶手動輸入年齡,當年齡大於18小於60的時候,向用戶彈出框顯示"滿足條件,可以註冊",當年齡小於18時,顯示「年齡不符合,不允許註冊」,當年齡大於60時,提示「由於您的年齡超出了系統允許註冊的最大年齡限制,給您帶來的不便,敬請諒解!」。
二、三目運算符
語法:條件語句 ? 執行語句1 : 執行語句2;
說明:(1)、先設定一個條件,寫在問號的前面,然後兩個執行語句緊跟問號書寫,中間使用冒號隔開。
(2)、當條件滿足時,執行語句1,當條件不滿足時,執行語句2。
(3)、三目運算符可以作為if條件語句的簡化版使用,合理的使用能夠簡化我們的代碼量,雖然可以多個三目運算符進行嵌套,但是不建議那樣使用,個人感覺那樣代碼閱讀率較差,不利於後期維護。
三、邏輯運算符(與或非)
我們在數學中學習過:與(同真為真,一假必假)、或(一真為真,同假為假)、非(真假相反)。
在js程式語言中,我們將他們稱之為邏輯運算符,運算方法與之類似,但是有點不同。
1、與(&&):使用兩個&表示。
運算規則:
(1)、與運算尋找的是第一個假值,換句話說它返回第一個假值。
(2)、當它開始執行時,先將其轉換為布爾值,然後從左向右去尋找我們書寫的語句中的第一個假值,遇假即返回,不再執行後面的語句,如果沒有假值就返回最後面執行語句的值。
(3)、與的操作優先級最高。就是與或非一起出現,先計算與,在計算或,最後計算非,後面舉例。
2、或( || ):使用兩根||表示。
和與運算不同的是,或運算尋找第一個真值,即遇真即返回,與運算在我們的編程中經常使用,下面我們一起來看看或的幾個妙用。
(1)、短路取值
當或運算從左向右尋找表達式或者值時,尋找到第一個真值並返回,這個過程就叫做短路取值。
(2)、尋找我們表達式或者變量的第一個真值。
3、非(!):用感嘆號表示。
用法:將值其轉換為布爾值,轉換為相反的值。
轉換為相反的值:
我們也可以利用其特性實現將某個值轉換為布爾值的效果。
使用兩個!!符號,第一個非將其轉換為布爾值並且取反,第二個非取反;這樣值沒有變,依然還是以前的真或假,但是類型轉換為了布爾值。