gpt4 book ai didi

javascript - var w = q||q2;这个表达是什么意思?

转载 作者:行者123 更新时间:2023-12-03 10:24:33 24 4
gpt4 key购买 nike

这是什么意思?

var q = [];
var q2 = ["canada","usa","mexico"];
var w = q||q2;
document.writeln(w);

变量 w 的值为:[] 空列表。

有人可以向我解释一下为什么它显示这个 [] 而不是 ["canada","usa","mexico"]。

最佳答案

您应该阅读Logical Operators来自 MDN。根据文档

The logical operator OR (||) expr1 || expr2

Returns expr1 if it can be converted to true; otherwise, returns expr2. Thus, when used with Boolean values, || returns true if either operand is true; if both are false, returns false.

简而言之,逻辑运算符从左到右进行计算。在您的情况下,由于您已将 q 声明为空数组 ([]),因此它的计算结果为 true 并立即将 w 分配给那个。

如果你想让q2优先,你可以简单地这样做

var w = q2 || q;

这样,只有当 q2 计算结果为 falsey 时,它才会将 w 分配为 q 。另一种选择是根本不声明 q 或将其声明为错误的内容。您可以找出计算结果为 false here 的内容。 .

关于javascript - var w = q||q2;这个表达是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29463333/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com