0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Node.jsでsetIntervalを使ったタイマー

Last updated at Posted at 2021-07-06

#はじめに

Node.jsでループ処理の勉強のため、Node.jsのタイマーを使ってみたときのメモです。
setInterval()を利用して指定時間間隔ごとに無限に処理を実行し、条件に合致する場合にclearInterval()を利用して処理を停止する仕組みにしています。

#準備

date-utilsの導入

時刻の取得はこちらの記事を参考にさせていただき、date-utilsを利用しました。下記を実行してdate-utilsを導入します。

$ npm install date-utils

タイマー

簡単のため、時刻指定は直接入力する方法にしています。
setIntervalを使い1秒(1000ms)おきに現在時刻を表示し、指定時刻になるとclearIntervalにより処理が終了します。

timer.js
'use strict';
require('date-utils');

var intervalID = setInterval(() => {
    var dt = new Date();
    var formatted = dt.toFormat("HH24:MI:SS");
    console.log("しばらくお待ち下さい、只今の時刻:",formatted);
    if(formatted === '22:20:00' ) {  //タイマーを止める時刻を指定する
        console.log("時間になりました!");
        setTimeout(()=>{
            clearInterval(intervalID)
        })
    }
}, 1000);

#実行結果

実行結果
$ node timer.js
しばらくお待ち下さい、只今の時刻: 22:19:18
しばらくお待ち下さい、只今の時刻: 22:19:19
しばらくお待ち下さい、只今の時刻: 22:19:20
:
しばらくお待ち下さい、只今の時刻: 22:20:00
時間になりました!

以上です。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?