javascript - if(aa)是什么意思
問題描述
if(aa)到底在判斷什么?(我在看人家代碼截圖有這些的判斷。沒看懂這個簡寫)是判斷aa是否為null和undefined嗎??
再假設(shè)圖二:
這里的if(aa)又在判斷什么??
問題解答
回答1:首先 if 表達(dá)式的語法是:
if (expression) statement
表達(dá)式expression被執(zhí)行,如果結(jié)果為 truthy(真值),statement就執(zhí)行,如果為falsy(假值),則不執(zhí)行.
JavaScript 中的 truthy 和 falsy. 假值為
falseundefinednull0-0NaN'' // the empty string
除了這些,其余的都是 真值.
回答2:請自行搜索關(guān)鍵詞:隱式類型變換
回答3:沒看懂可提問
回答4:這是if判斷表達(dá)式,具體的語法如下:
if (condition) statement1[else statement2]
其中condition中值需要是布爾類型 true或者false
在Javascript中以下值會被隱式轉(zhuǎn)換為false:0, -0, null, false, NaN, undefined, '' (空字符串)其他值會被轉(zhuǎn)換為true,要注意的是'false'也是true.
回答5:if (aa) 相當(dāng)于
if (!!aa){ console.log(’here goes true’); }
相關(guān)文章:
1. mysql - 這條聯(lián)合sql語句哪里錯了2. mysql優(yōu)化 - 關(guān)于mysql分區(qū)3. 請教各位大佬,瀏覽器點 提交實例為什么沒有反應(yīng)4. java - Atom中文問題5. java - MySQL中,使用聚合函數(shù)+for update會鎖表嗎?6. css3 - 這個形狀使用CSS怎么寫出來?7. javascript - 為什么這個點擊事件需要點擊兩次才有效果8. node.js - 在vuejs-templates/webpack中dev-server.js里為什么要exports readyPromise?9. javascript - ionic2 input autofocus 電腦成功,iOS手機(jī)鍵盤不彈出10. java - C語言算法題-韓信點兵 求解?
