JavaScript 赋值中的逻辑 AND 运算符
使用逻辑 AND 运算符 (&&) 进行值赋值与逻辑 OR 运算符的赋值不同在介绍性示例中讨论过。仅当第一个表达式为 false 时,OR 运算符才会分配第二个表达式的值,而 AND 运算符的行为有所不同:
Non-Falsy someOtherVar:
If someOtherVar不为 null、未定义、0、NaN、false 或空字符串(即,它为 true),AND 表达式计算为 true 并将第二个表达式的值分配给 oneOrTheOther。例如:
var someOtherVar = 7; var oneOrTheOther = someOtherVar && "some string"; // oneOrTheOther will be assigned "some string"
Falsy someOtherVar:
但是,当 someOtherVar 为 false 时,AND 表达式计算结果为 false 并分配第一个表达式 (someOtherVar) 的值) 到 oneOrTheOther。在这种情况下,oneOrTheOther 将收到 someOtherVar 的假值:
var someOtherVar = null; var oneOrTheOther = someOtherVar && "some string"; // oneOrTheOther will be assigned null
此行为是由于 AND 运算符在维持其值是假值时返回第一个操作数 (someOtherVar)(相反到 OR 运算符,返回第二个操作数)。
以上是JavaScript 的逻辑 AND 运算符如何影响变量赋值?的详细内容。更多信息请关注PHP中文网其他相关文章!