預設 "" 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 若第一個表達式為真結果為第一個表達的值 若第一個表達式為假則結果為第二個表達的值