我在 JS 中看到了这个:
item = item || {};
我猜这是三元运算符的一些变体,但实际上是做什么的?
我在 JS 中看到了这个:
item = item || {};
我猜这是三元运算符的一些变体,但实际上是做什么的?
(expr1 || expr2)
“如果可以转换为 true,则返回 expr1;否则,返回 expr2。”
因此,当expr1是(或评估为)其中之一时0,"",false,null,undefined,NaN,则expr2返回,否则expr1返回
这被称为冗余,但在这种情况下,这是一件好事。基本上,如果item没有定义(或者其他错误的(false, 0, ""...),那么我们给它一个默认值。
最常见的例子是在事件中:
evt = evt || window.event;
如果 item 存在,则将 item 设置为 item,或将其设置为{}
它相当于:
if( !item ){ item = {}; }