首頁  >  文章  >  web前端  >  為什麼在 JavaScript 中將「return」語句放在新行上會導致「undefined」?

為什麼在 JavaScript 中將「return」語句放在新行上會導致「undefined」?

Susan Sarandon
Susan Sarandon原創
2024-11-07 05:45:02638瀏覽

Why Does Putting a `return` Statement on a New Line in JavaScript Lead to `undefined`?

新行上的JavaScript 回傳語句:為什麼失敗

考慮以下JavaScript 程式碼:

<code class="javascript">function correct() {
    return 15;
}

function wrong() {
    return
          15;
}</code>

Correct( ) 函數傳回預期值15,而Right() 函數意外回傳undefined。此行為與其他程式語言不同。

當 return 語句位於新行時,JavaScript 會在前一行的結尾插入一個分號。這是因為分號在 JavaScript 中是可選的,但解釋器插入它們是為了保持程式碼清晰。

在錯誤的()函數中,JavaScript 在返回後插入分號,這實際上終止了函數並忽略了以下行。因此,它返回未定義。

要避免此問題,您可以在傳回值兩邊使用括號或避免將其放在新行上。例如:
<code class="javascript">function wrong() {
    return(
          15);
}</code>

以括號開始表達式,JavaScript 知道跳過在換行符處插入分號。這樣可以確保回傳值正確回傳。

以上是為什麼在 JavaScript 中將「return」語句放在新行上會導致「undefined」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn