退出 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