为什么 Javascript 的 Return 语句失败并在新行上返回值
考虑下面的 JavaScript 代码:
<code class="javascript">function correct() { return 15; } function wrong() { return 15; } console.log("correct() called : "+correct()); console.log("wrong() called : "+wrong());</code>
在此示例中,正确() 正确返回 15,而错误 () 莫名其妙地返回 undefined。这种行为与其他编程语言不同。下面的 bad() 替代实现纠正了这个问题:
<code class="javascript">function wrong() { return( 15); }</code>
为什么会发生这种情况?
JS 解释器可以在认为有必要时在某些换行符处插入分号。但是,他们的判断可能与预期有所不同。
当 return 语句后跟换行符时,JS 解释器会在 return 语句后面插入分号。这会导致错误()函数的代码被修改为:
<code class="javascript">function wrong() { return; 15; }</code>
现在这是不正确的。
相反,带有添加括号的错误()的修改版本开始一个表达式带左括号。 JS 解释器会识别这一点并避免插入分号,从而保留预期的行为。
以上是为什么 JavaScript 的'return”语句失败并在新行上返回值?的详细内容。更多信息请关注PHP中文网其他相关文章!