Short circuit evaluation in JavaScript - SyntaxError: Unexpected token 'return'

Short circuit evaluation in JavaScript - SyntaxError: Unexpected token 'return'

我想使用 article 中示例描述的短路评估语法(使用 && 运算符):

说,我有这种情况:

function externalFunction() {

    id == ...
    text == ...

    // OK: Standard if syntax is fine

    if ( aFunction(id, text) ) return

    // KO: Short circuit evaluation generate a RUN-TIME ERROR: 
    // SyntaxError: Unexpected token 'return'
    // anotherFunction(id, text) && return
    //                              ^^^^^^

    anotherFunction(id, text) && return


}

为什么我有这个错误? 也许我不能使用带有语言关键字 (return) 的单个语句?

&& 的右侧需要是一个 表达式 。你试图在那里发表声明。

&& 必须评估为 某物,但 return x 不会给您 。它退出函数并将其 RHS 传递给调用函数。