在js函式中我們經常會使用到短路運算子,主要是邏輯與(&&) 和 邏輯或(||)
1、邏輯與 && 的運算方式
var a = 5 && 6;如果邏輯與運算子左邊的值布林轉換後為console.log(a); //返回的結果為 6
true,
那麼返回右邊的值(不管右邊的值是真還是假)。
var a = false && 6;如果邏輯與運算子左邊的值布林轉換後為console.log(a); //返回的結果為 false
false
,那麼返回左邊的值,但是當邏輯與的左邊為
null/nan/undefined ,
結果就會得到
null/nan/undefined。
2、邏輯或 || 的運算方式
var a = false || 6;如果邏輯或運算子左邊的值布林轉換後為console.log(a); //返回的結果為 6
false,
那麼返回右邊的值(不管右邊的值是真還是假)。
var a = true || 6;如果邏輯或運算子左邊的值布林轉換後為console.log(a); //返回的結果為 true
true,
那麼返回左邊的值,如果兩個運算元都是是null(nan/undefined),返回null(nan/undefined)
js短路, 短路運算子的使用
正如標題所言,js中 和 的特性幫我們精簡了 的同時,也帶來了 可讀性的降低。這就需要我們自己來權衡了,下面有個不錯的示例,在js邏輯運算中,0 null false undefined nan都會判為false,其他都為true.先計算第乙個運算數,如果可以被轉換成true,則返回左邊這個表示式的...
js 算術運算子和比較運算子
自增1 自減單獨使用的 字首和字尾都是自增自減,沒有什麼特別卻別 和其他表示式一起使用是,作為字首,先自增自減,再做其他操作 作為字尾,先做其他操作再自增自減 var num 5 num 相當於 num num 1 console.log num 4 num console.log num 5 nu...
JS運算子 算術運算子 比較運算子 賦值運算子
兩邊的變數都是number型別 則是單純的加法運算 當字串出現時 結果是字串型別 字串之後的內容 不論什麼型別 都會被作為字串進行拼接 例子 var num1 10 var num2 20 num num1 num2 var result num1 num2 num1 false console.l...