返回快捷方式 < &&|| >



我正在尝试使用快捷键返回。

window.abc=window.abc || console.log("works fine");

window.cde=window.cde && console.log("works fine"); 

但是如果我使用return而不是console,我将得到一个错误。

window.abc=window.abc && return; 

是有诀窍还是有解释?

console.log()是一个表达式,可以用作其他表达式或语句的一部分。
return是一个语句,不能用作另一个语句或表达式的一部分。

你可以这样做:

return .. || ..;
if (..)
    return ..;

你不能这样做:

.. && return;

解释是return不是一个可以OR或AND的表达式。它不会产生值。这是一个声明。

你可能想用条件分支代替:

if (window.abc)
  return;

如果您处于全局作用域,并且想要,例如,正如您在评论中指出的那样,要丢弃脚本文件的其余部分,您只需要将所有内容包装在(匿名)函数中。

(function() {
   // ...
   if (window.abc)
     return;
   // ...
})();

最新更新