if(aa)是什么意思

我只是一个渣渣
  • 278

clipboard.png
if(aa)到底在判断什么?(我在看人家代码截图有这些的判断。没看懂这个简写)
是判断aa是否为null和undefined吗??

再假设图二:

clipboard.png

这里的if(aa)又在判断什么??

回复
阅读 4.1k
5 个回答

首先 if 表达式的语法是:

if (expression)
    statement

表达式expression被执行,如果结果为 truthy(真值),statement就执行,如果为falsy(假值),则不执行.

JavaScript 中的 truthyfalsy. 假值为

false
undefined
null
0
-0
NaN
"" // the empty string

除了这些,其余的都是 真值.

请自行搜索关键词:隐式类型变换

这是if判断表达式,具体的语法如下:

if (condition)
   statement1
[else
   statement2]

其中condition中值需要是布尔类型 true或者false

在Javascript中以下值会被隐式转换为false:
0, -0, null, false, NaN, undefined, "" (空字符串)
其他值会被转换为true,要注意的是"false"也是true.

if (aa) 相当于

if (!!aa){
    console.log('here goes true'); 
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏