赋值内的JavaScript AND运算符

我知道您可以在JavaScript中执行以下操作:

var oneOrTheOther = someOtherVar || "these are not the droids you are looking for...";

其中变量oneOrTheOther将在第一表达式的值,如果它不是nullundefinedfalse。在这种情况下,它将被分配给第二条语句的值。

但是,oneOrTheOther当我们使用逻辑AND运算符时,变量将分配给什么?

var oneOrTheOther = someOtherVar && "some string";

someOtherVar非假的时候会发生什么?假的

时候会发生什么someOtherVar

只是学习JavaScript,我很好奇结合AND运算符的赋值会发生什么。

回答:

基本上,逻辑与运算符(&&),将返回第二操作数的值,如果第一个是 truthy ,它将返回第一操作数的值,如果它是由本身 falsy ,例如:

true && "foo"; // "foo"

NaN && "anything"; // NaN

0 && "anything"; // 0

需要注意的是 falsy

值是那些裹胁到false在布尔上下文中使用时,它们是nullundefined0NaN,一个空字符串,当然false,什么都强求来true

以上是 赋值内的JavaScript AND运算符 的全部内容, 来源链接: utcz.com/qa/408175.html

回到顶部