JavaScript 條件運(yùn)算符
■知識(shí)點(diǎn)
條件運(yùn)算符是唯一的三元運(yùn)算符。語(yǔ)法形式如下:
b ?x : y
b操作數(shù)必須是一個(gè)布爾型的表達(dá)式,x和y是任意類型的值。
如果操作數(shù)b的返回值為true,則執(zhí)行x操作數(shù),并返回該表達(dá)式的值。
如果操作數(shù)b的返回值為false,則執(zhí)行y操作數(shù),并返回該表達(dá)式的值。
■實(shí)例設(shè)計(jì)
定義變量a,然后檢測(cè)a是否被賦值,如果賦值則使用該值,否則設(shè)置默認(rèn)值。
var a = null; //定義變量a
typeof a != "undefined" ? a = a : a = 0 ; //檢測(cè)變量a是否賦值,否則設(shè)置默認(rèn)值
console.log(a); //顯示變量a的值,返回null
條件運(yùn)算符可以轉(zhuǎn)換為條件結(jié)構(gòu):
if(typeof a != "undefined" ) //賦值
a=a;
else //沒(méi)有賦值
a = 0;
console.log(a);
也可以轉(zhuǎn)換為邏輯表達(dá)式:
(typeof a != "undefined") && (a = a) || (a = 0); //邏輯表達(dá)式
console.log(a);
在上面的表達(dá)式中,如果a已賦值,則執(zhí)行(a=a)表達(dá)式,執(zhí)行完畢就不再執(zhí)行邏輯或后面的(a = 0)表達(dá)式;如果a未賦值,則不執(zhí)行邏輯與運(yùn)算符后面的(a=a)表達(dá)式,轉(zhuǎn)而執(zhí)行邏輯或運(yùn)算符后面的表達(dá)式(a=0)。
點(diǎn)擊加載更多評(píng)論>>