【发布时间】:2020-10-02 10:41:46
【问题描述】:
当我运行此代码时,首先显示 1,然后显示未定义。但是还是没看懂。
alert(alert(1) && alert(2));
这里有一些解释:
对警报的调用返回未定义(它只是显示一条消息,因此没有有意义的返回)。
因此,&& 计算左操作数(输出 1)并立即停止,因为 undefined 是一个假值。而&& 寻找一个假值并返回它,这样就完成了。
【问题讨论】:
-
那么你的问题是什么?你似乎已经知道发生了什么。
-
"
&&或||运算符产生的值不一定是Boolean类型。产生的值将始终是两者之一的值操作数表达式。" (Source) -
您的预期结果是什么?
标签: javascript alert operator-keyword