首页 > web前端 > js教程 > 如何终止 JavaScript 中的脚本?

如何终止 JavaScript 中的脚本?

王林
发布: 2023-09-04 10:29:02
转载
1075 人浏览过

如何终止 JavaScript 中的脚本?

脚本的终止意味着它停止执行 JavaScript 代码。在某些紧急情况下,开发人员需要在脚本执行过程中中止 JavaScript 代码的执行。

此外,我们还可以使用 if-else 语句来决定何时终止脚本执行以及何时继续。在这里,我们将学习中途终止脚本的不同方法。

使用退货声明

return 语句用于终止脚本内任何代码的执行。一旦我们在函数内部执行了return语句,return语句后面的代码就不会执行。但是,我们不需要使用 return 语句返回任何值,因为我们可以只使用 return 关键字。

语法

用户可以按照下面的语法使用 return 语句来终止 JavaScript 中脚本的执行。

function execute() {
   
   // this code will be executed
   return;
   
   // this code will not be executed.
}
登录后复制

在上面的语法中,我们在函数中使用了 return 语句。

示例

在下面的示例中,每当文档加载到网页上时,我们都会调用execute() 函数。在execute()函数中,我们检查数组的第一个值是否存在并继续执行;否则,我们执行 return 语句来停止脚本的执行。

<html>
<body>
   <h3>Using the <i> return statement </i> to terminate the script in JavaScript</h3>
   <div id = "content"> </div>
   <script>
      let content = document.getElementById("content");
      let array = [];
      function execute() {
         content.innerHTML = "This is a JavaScript code.";
         if (!array[0]) {
            return;
         }
         content.innerHTML = "This statment will not execute!";
      }
      execute();
   </script>
</body>
</html>
登录后复制

在输出中,用户可以观察到函数的最后一条语句没有作为 if 语句评估 true 的条件执行,并且执行 return 语句。

抛出错误以终止脚本

我们可以使用 throw 关键字抛出自定义错误。我们可以使用 Error() 构造函数来创建一个新的错误。我们可以从脚本内的任何位置抛出错误来停止执行。当我们抛出错误时,它不会执行在 throw 语句之后编写的语句。

语法

用户可以按照下面的语法抛出错误来终止 JavaScript 中脚本的执行。

throw new Error("Error_Message"); 
登录后复制

在上述语法中,“Error_message”是向用户显示的错误消息。

示例

在下面的示例中,我们使用execute() 函数中的 throw 关键字抛出了错误。此外,我们还触发了 try-catch 块内的函数调用来处理错误。用户可以在输出中观察到,在我们抛出错误后,脚本将停止执行。

<html>
<body>
   <h3>Throwing the <i> error </i> to terminate the script in JavaScript.</h3>
   <div id = "content"> </div>
   <script>
      let content = document.getElementById("content");
      let array = [];
      function execute() {
         throw new Error("This is an error to stop execution!");
         content.innerHTML += "This statement will not execute!";
      }
      try {
         execute();
      }
      catch (err) {
         content.innerHTML += "Error: " + err.message;
      }
   </script>
</body>
</html>
登录后复制

使用clearInterval()方法

clearInterval()方法以定时器的id为参数来清除定时器。我们可以设置定时器来执行任何函数。例如,我们可以使用 setTimeOut() 方法在延迟一段时间后执行一些脚本。如果我们需要停止脚本的执行,我们可以在脚本执行之前使用clearInterval()方法清除超时。

语法

用户可以按照下面的语法使用clearInterval()方法来终止脚本的执行。

let timeVar = setTimeout(() => {
   
   // stop execution of this script
},delay);
clearInterval(timeVar);
登录后复制

在上面的语法中,我们可以停止执行 setTimeOut() 方法的回调函数内编写的脚本。

示例

在下面的示例中,我们使用 setTimeOut() 方法在延迟 2000 毫秒后执行脚本。另外,我们将计时器的 id 存储在 timeVar 变量中。

我们在脚本执行之前使用clearInterval()方法清除计时器,这就是我们如何停止JavaScript中任何脚本的执行。

<html>
<body>
   <h3>Using the <i> clearInterval() method </i> to terminate the script in JavaScript.</h3>
   <div id = "content"> </div>
   <script>
      let content = document.getElementById("content");
      let timeVar = setTimeout(() => {
         content.innerHTML = "This is inside the setTimeOut() function!";
      }, 2000);
      content.innerHTML = "This is outside the setTimeOut() function!";
      clearInterval(timeVar); // This will clear the setTimeOut() function.
   </script>
</body>
</html>
登录后复制

使用 Node.js 中的 process.exit() 方法

process.exit() 不适用于普通 JavaScript,它仅适用于 Node.js,因为我们需要导入“process”模块。我们可以通过传递 0 作为参数来执行 process.exit() 方法来终止脚本。

语法

用户可以按照下面的语法使用process.exit()方法来终止脚本。

process.exit(0); 
登录后复制

在上面的语法中,我们传递了 0 作为参数以用于终止目的。

示例

在下面的例子中,我们编写了JavaScript代码。我们在代码中导入了处理模块。我们已将 30 分配给“num”变量。 if 语句条件始终评估为 true,因此它将停止代码的执行,我们可以在输出中观察到这一点。

// Importing process module
var process = require('process');
let num = 30;
console.log("The value of number is " + num);
if(num > 20) {
   process.exit(0);
}
console.log("This line will not be printed as process.exit() is called"); 
登录后复制

我们学习了在 JavaScript 中终止脚本的各种方法。第一种方法是使用return语句,第二种方法是抛出错误,第三种方法是使用clearInterval()方法,最后一种方法是使用process.exit()方法。

使用 return 语句终止脚本是最好的,但它只能在函数内部起作用。 clearInterval() 方法仅在 setTImeOut() 方法执行脚本之前立即终止脚本。 process.exit() 仅对 NodeJS 有帮助。

以上是如何终止 JavaScript 中的脚本?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板