退出 JavaScript 函式

Harshit Jindal 2023年1月30日 2021年3月21日
  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 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