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