在线文档教程
JavaScript
错误 | Errors

Errors: Stmt after return

Errors: Stmt after return

信息

Warning: unreachable code after return statement (Firefox)

错误类型

警告

哪里出错了?

在这些情况下,可能会发生返回语句后无法访问的代码:

  • return语句之后使用表达式时,或

  • 当使用分号较少的返回语句,但直接在后面包含一个表达式时。

当一个表达式存在于一个有效的return语句之后时,会发出一个警告,指出该return语句之后的代码是不可访问的,意味着它永远不能运行。

为什么在return陈述后应该用分号?在没有分号的return语句的情况下,可能不清楚开发者是否打算在下面的行上返回语句,或者停止执行并返回。这个警告表明这个return陈述的写法是不明确的。

如果这些语句遵循它,警告将不会显示为分号无返回:

  • throw

  • break

  • var

  • function

示例

无效的情况

function f() { var x = 3; x += 4; return x; // return exits the function immediately x -= 3; // so this line will never run; it is unreachable } function f() { return // this is treated like `return;` 3 + 4; // so the function returns, and this line is never reached }

有效的情况

function f() { var x = 3; x += 4; x -= 3; return x; // OK: return after all other statements } function f() { return 3 + 4 // OK: semicolon-less return with expression on the same line }