邏輯與短路運算
例如: 123 && 456
如果表示式1 結果為真 則返回表示式2 如果表示式1為假 那麼返回表示式1
console.
log(
123&&
456)
;// 456
console.
log(0&&
456)
;// 0
console.
log(0&&
1+2&&
456*
56789);
// 0
console.
log(
''&&1+
2&&456*
56789);
// ''
// 如果有空的或者否定的為假 其餘是真的
// 0 '' null undefined nan為假
邏輯或短路運算
例如: 123 || 456
如果表示式1 結果為真 則返回的是表示式1 如果表示式1 結果為假 則返回表示式2
console.
log(
123||
456)
;// 123
console.
log(
123||
456||
456+
123)
;// 123
console.
log(0||
456||
456+
123)
;// 456
// 邏輯中斷很重要 它會影響我們程式執行結果
var num =0;
console.
log(
123|| num++);
console.
log(num)
;// 0 此處的num++並未執行,故num=0
來自pink老師課堂筆記 js短路, 短路運算子的使用
正如標題所言,js中 和 的特性幫我們精簡了 的同時,也帶來了 可讀性的降低。這就需要我們自己來權衡了,下面有個不錯的示例,在js邏輯運算中,0 null false undefined nan都會判為false,其他都為true.先計算第乙個運算數,如果可以被轉換成true,則返回左邊這個表示式的...
JS中短路運算子 和
在js函式中我們經常會使用到短路運算子,主要是邏輯與 和 邏輯或 1 邏輯與 的運算方式 var a 5 6 console.log a 返回的結果為 6 如果邏輯與運算子左邊的值布林轉換後為 true,那麼返回右邊的值 不管右邊的值是真還是假 var a false 6 console.log a...
js中的位運算
按位與 按位或 按位非 按位異或 有符號左移 有符號右移 無符號右移 或參考 js中的位運算 我們可能很少在程式設計中用位運算,如果沒深入學習,可能也很難理解。平時的數值運算,其實是要先轉換成二進位制再進行運算的,而位運算就是直接進行二進位制運算,所以位運算的執行效率肯定是更高的。下面通過一些例項來...