退出 JavaScript 函式

Harshit Jindal 2023年10月12日
  1. 在 JavaScript 中使用 return 來退出函式
  2. 在 JavaScript 中使用 break 來退出函式
  3. 在 JavaScript 中使用 try...catch 來退出函式
退出 JavaScript 函式

本教程說明了如何提前退出 JavaScript 中的函式。

我們經常遇到想要提前退出某個功能的情況,例如滿足特定條件時。但是 JavaScript 不像其他程式語言(如 C++,PHP 等)那樣具有顯式功能。不同的方法可以幫助我們提前退出某個函式。

JavaScript 明確提供了三種主要方法來使函式從其自然流程中提前退出,即 returnbreaktry and catch

在 JavaScript 中使用 return 來退出函式

當滿足特定條件時,我們可以使用 return 語句退出函式。我們可以通過單獨使用 return 語句或 return 函式中的值來退出函式。

function divide(a, b) {
  if (b == 0) {
    return 'invalid b';
  } else
    return a / b;
}

console.log(divide(5, 2));
console.log(divide(5, 0));

輸出:

2.5
invalid b

在此函式中,我們首先檢查 b 是否為 0,以排除無效除法的情況,因為將數字除以 0 會返回 infinity,所以我們提前退出函式,返回一個字串,宣告 b 的值是無效的。執行 ab 除法的語句永遠不會執行。

在 JavaScript 中使用 break 來退出函式

break 通常用於從 for 迴圈中退出,但可以通過在函式中使用標籤將其用於退出函式。

const logIN = () => {
  logIN: {console.log('I get logged in'); break logIN;
          // nothing after this gets executed
          console.log('I don\'t get logged in');}
};
logIN();

輸出:

I get logged in

在這裡,我們使用標籤 logIN,然後使用 break 從標籤中退出,以提前退出函式。

在 JavaScript 中使用 try...catch 來退出函式

我們可以使用 try...catch 塊通過引發異常來提前退出函式。

function myFunc() {
  var a = 100;
  try {
    if (typeof (a) != 'string') throw (a + ' is not a string');
  } catch (e) {
    alert('Error: ' + e);
  }

  a++;
  return a;
}
myFunc();

輸出:

Error: 100 is not a string

我們丟擲異常以打破常規流程,而 catch 塊捕獲該異常,然後退出該函式,而所有其他語句均未執行。

所有主要的瀏覽器都支援這三種方式。

作者: Harshit Jindal
Harshit Jindal avatar Harshit Jindal avatar

Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.

LinkedIn

相關文章 - JavaScript Function