天天看點

js && ||

預設 "" NaN undefined 0 false null 為false

&& 表達式 :

若第一個表達式為真 則結果為第二個表達式的值  若第一個表達式為false 則結果為第一個表達式的值  (條件判斷全真才為真 最終結果轉換為boolean )

var a=2 && 3 a結果:3   if(a) (條件判斷全真才為真 a最終結果轉換為boolean true)

var a="" && 4 a結果:""

var b=5 && "" a結果:"" if(b) (條件判斷全真才為真 b最終結果轉換為boolean false)

|| 作為表達式:

若第一個表達式為真結果為第一個表達的值  若第一個表達式為假則結果為第二個表達的值

2>1 && console.log(333) 若第一個表達式為真才會執行後面的語句 若第一個表達式為false 則後面語句不執行

var a=2 || 3 a結果:2     if(a) (有一個真就為真 a最終結果轉換為boolean false)

var a=0 || 3 a結果:3

var eve=event || window.event 若第一個表達式為真結果為第一個表達的值  若第一個表達式為假則結果為第二個表達的值