解释 Node.js 中的 clearTimeout() 函数


Node.js 中有一个计时器模块,用于安排计时器并在稍后的时间执行特定函数。在 Node.js 中,JavaScript 函数 clearTimeout() 用于通过使用特定 setTimeout() 函数调用返回的 timeoutID 来停止 setTimeout() 函数的执行。

如果 timeoutID 与任何之前的调用不匹配或给定无效值,则此函数不执行任何操作。setTimeout() JavaScript 函数在用户指定的时间量或延迟后执行指定的代码,并返回一个 ID,这是一个正整数,通常称为 timeoutID。

Node.js 中 clearTimeout() 函数的语法

让我们来探索一下 clearTimeout javascript 函数的语法:

clearTimeout(timeoutID)

在上面的语法中,我们传递了一个参数,它是 clearTimeout() 函数中的 ‘timeoutID’。此外,setTimeout() JavaScript 函数的函数调用的结果是提供给 clearTimeout() 函数参数的值,通常表示为 timeoutID。

使用此 ID,我们可以终止传递给 setTimeout() 的函数的执行。clearTimeout() 函数不返回任何内容,或者换句话说,此函数返回未定义的值。

clearTimeout() 函数的工作原理

让我们以提醒应用程序为例,演示 clearTimeout() JavaScript 函数是如何工作和使用的。

在提醒应用程序中,用户可以指定应用程序需要发出声音以发出提醒的特定时间。在用户提前记住某些事情或不需要应用程序提醒任务的情况下,可能存在一种情况,用户可以关闭提醒应用程序以接收警报。

与此类似,setTimeout() JavaScript 函数允许程序员使用 setTimeout() JavaScript 函数在特定时间后接收警报消息或运行任何特定代码段。

但是,程序员可能不再需要执行该代码,并且程序员希望终止代码的执行,这可以通过使用该特定 setTimeout() 函数调用的返回值(整数),并将其传递给 clearTimeout() JavaScript 函数来实现。

clearTimeout() 函数是一个简单的操作,除非提供的参数值是尚未执行的 setTimeout() 函数的成员,否则它不执行任何操作,然后 clearTimeout JavaScript 函数将取消它,否则它不执行任何操作。

示例

在此示例中,我们将实现基本代码以显示 setTimeout() 函数和 clearTimeout() 函数的工作原理,因为要展示 clearTimeout() 函数的属性,需要首先启动计时器,该计时器只能通过使用 clearTimeout 停止,让我们来看一下示例。

var time_count = 0;
var tID;
var isOn = false;
function reset() {
   clearTimeout(tID);
   time_count = 0;
   console.log(time_count)
   isTimerOn = false;
}
function Countedtime() {
   console.log(time_count)
   time_count = time_count + 1;
   tID = setTimeout(Countedtime, 1000);
}
function start(){
   if (isOn == false){
      isOn = true;
      Countedtime();
   }
}
function stop(){
   clearTimeout(tID);
   isOn = false;
}

在上面的代码中,首先,我们声明了一些变量,例如 ‘time_count’ 用于计算时间,‘isOn’ 用于检查计时器是否开启,最后,一个变量用于存储 setTimeout() 函数提供的计时器 ID。

我们定义了一些方法,例如 reset() 用于重置计数器,并且在其中,我们使用了 clearTimeout() 方法将 ‘tID’ 元素设置为零。还有另外两个函数 start 和 stop,它们用于启动和停止计数器。

类似函数

对于 setTimeout() 函数,有 clearTimeout() 函数,我们还有另一个函数 setInterval(),要删除由 setIntervel() 方法定义的元素是 clearInterval(),它具有与 clearTimeout() 方法相同的语法,让我们看看 Nodejs 中 clearInterval() 方法的语法:

clearInterval(Id_of_interval)

使用 setTimeout() 和 clearTimeout() 创建秒表

<!DOCTYPE html>
<html>
<head>
   <title>
   Stop-Watch using setTimeout and clearTimeout methods
   </title>
</head>
<body>
   <h1 style="color: black"> Stop-Watch </h1>
   <div style= "padding-bottom: 10px">
      To reset the StopWatch please click the given button:
   <button onclick="reset_fun()"> Click Me!! </button>
   </div>
   <div style= "padding-bottom: 10px">
      To start the count please click the givern button :
      <button onclick="start_fun()">Click Me!!</button>
   </div>
   <div style= "padding-bottom: 10px">
      Number of seconds passed are:
      <input type="text" id="show_">
   </div>
   <div style= "padding-bottom: 10px">
      To Stop the count press here:
      <button onclick="stop_fun()">Stop</button>
   </div>
   <script>
      var time_count = 0;
      var tID;
      var isOn = false;
      function reset_fun() {
         clearTimeout(tID);
         time_count = 0;
         document.getElementById("show_").value = time_count;
         isTimerOn = false;
      }
      function Countedtime() {
         document.getElementById("show_").value = time_count;
         time_count = time_count + 1;
         tID = setTimeout(Countedtime, 1000);
      }
      function start_fun() {
         if (isOn == false) {
            isOn = true;
            Countedtime();
         }
      }
      function stop_fun() {
         clearTimeout(tID);
         isOn = false;
      }
   </script>
</body>
</html>

在输出中,我们将得到三个按钮和一个显示。按钮用于启动、停止和重置秒表,而显示将显示秒表上经过的秒数。

在上面的代码中,我们使用上面为 clearTimeout() 函数定义的语法定义了秒表的指令。我们使用了相同的脚本并获得了完整的可工作秒表。

首先,我们在其中定义了 html 代码的主体,我们定义了用于获取输入的按钮,对于脚本,我们使用了 script 标签来添加秒表工作代码。

在本教程中,我们了解到在 Node.js 中,JavaScript 函数 clearTimeout() 用于通过使用特定 setTimeout() 函数调用返回的 timeoutID 来停止 setTimeout() 函数的执行。

如果 timeoutID 与任何之前的调用不匹配或给定无效值,则此函数不执行任何操作。setTimeout() JavaScript 函数在用户指定的时间量或延迟后执行指定的代码,并返回一个 ID,这是一个正整数,通常称为 timeoutID。

更新于: 2023年3月17日

363 次查看

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.