javascript - if(aa)是什么意思
問題描述
if(aa)到底在判斷什么?(我在看人家代碼截圖有這些的判斷。沒看懂這個簡寫)是判斷aa是否為null和undefined嗎??
再假設(shè)圖二:
這里的if(aa)又在判斷什么??
問題解答
回答1:首先 if 表達式的語法是:
if (expression) statement
表達式expression被執(zhí)行,如果結(jié)果為 truthy(真值),statement就執(zhí)行,如果為falsy(假值),則不執(zhí)行.
JavaScript 中的 truthy 和 falsy. 假值為
falseundefinednull0-0NaN'' // the empty string
除了這些,其余的都是 真值.
回答2:請自行搜索關(guān)鍵詞:隱式類型變換
回答3:沒看懂可提問
回答4:這是if判斷表達式,具體的語法如下:
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. java - 創(chuàng)建maven項目失敗了 求解決方法2. MySQL中的enum類型有什么優(yōu)點?3. java - 線上應(yīng)用,如果數(shù)據(jù)庫操作失敗的話應(yīng)該如何處理?4. javascript - js setTimeout在雙重for循環(huán)中如何使用?5. Phpstorm搭配Sqlsever2008實現(xiàn)PDO連接報錯6. javascript - arguments.callee7. css - 如何選擇字體?8. atom開始輸入!然后按tab只有空格出現(xiàn)沒有html格式出現(xiàn)9. mysql - 這種分級一對多,且分級不平衡的模型該怎么設(shè)計表?10. javascript - 有適合開發(fā)手機端Html5網(wǎng)頁小游戲的前端框架嗎?
