JavaScript中的邏輯判斷符&&、||與!介紹
與C、Java等語言一樣,JavaScript中可以用&&、||、!三個邏輯判斷符來對boolean值進行邏輯判斷。與C、Java不同的是,JavaScript中邏輯與(&&)和邏輯或(||)操作符可以應用在任何值上,而操作結束后返回的也不一定是boolean值。
邏輯與&&的處理規(guī)則
JavaScript中&&的處理規(guī)則是這樣的:
1.判斷第一個值是否為Falsy。如果為Falsy,則直接返回第一個值(不一定為boolean類型)。
2.如果第一個值為Truthy,則直接返回第二個值(不一定為boolean類型)。
var o = {x:1, y:2};
console.log(o && o.y);//2
console.log(null && x);//null
邏輯或||的處理規(guī)則
與&&操作符類似,JavaScript中||的處理規(guī)則是這樣的:
1.判斷第一個值是否為Truthy。如果為Truthy,則直接返回第一個值(不一定為boolean類型)。
2.如果第一個值為Falsy,則直接返回第二個值(不一定為boolean類型)。
||操作符的這種行為使得JavaScript中一些快捷寫法成為現(xiàn)實:
1. 從一系列值中獲取第一個Truthy值:
var a = null;
var b = 42;
var v = a || b || 100;
console.log(v);//42
2. 對函數(shù)中的參數(shù)賦以默認值:
function test(p){
p = p || {};//if p is not passed, make it an empty object.
}
與&&和||不同,!操作符的行為與C、Java等語言是一致的,只返回boolean值(true或false)。
相關文章
JavaScript求一組數(shù)的最小公倍數(shù)和最大公約數(shù)常用算法詳解【面向對象,回歸迭代和循環(huán)】
這篇文章主要介紹了JavaScript求一組數(shù)的最小公倍數(shù)和最大公約數(shù)常用算法,結合實例形式分析了javascript基于面向對象,回歸迭代和循環(huán)等算法求解一組數(shù)的最小公倍數(shù)與最大公約數(shù)相關操作技巧,需要的朋友可以參考下2018-05-05基于JS代碼實現(xiàn)當鼠標懸停表格上顯示這一格的全部內容
這篇文章主要介紹了基于JS代碼實現(xiàn)當鼠標懸停表格上顯示這一格的全部內容 的相關資料,需要的朋友可以參考下2016-06-06