[解決済み] node.js:setIntervalとclearIntervalの使い方は?
2022-03-17 13:17:01
質問
これは、nodeJSで私のJSです。
function test(a, room, seconds) {
console.log(a, room, seconds);
}
intervalid = setInterval(test, 1000, 'room', 20);
console.log('intervalid', intervalid);
という出力が返ってきます。
intervalid Timeout {
_called: false,
_idleTimeout: 1000,
_idlePrev: TimersList {
_idleNext: [Circular],
_idlePrev: [Circular],
_timer: Timer { '0': [Function: listOnTimeout], _list: [Circular] },
_unrefed: false,
msecs: 1000,
nextTick: false
},
_idleNext: TimersList {
_idleNext: [Circular],
_idlePrev: [Circular],
_timer: Timer { '0': [Function: listOnTimeout], _list: [Circular] },
_unrefed: false,
msecs: 1000,
nextTick: false
},
_idleStart: 377,
_onTimeout: [Function: test],
_timerArgs: [ 'room', 20 ],
_repeat: 1000
}
単純なJavascriptでは、単純なINTEGER数を返しますが
既存のユーザーオブジェクトにintervalをアタッチする場合、例えば:
user.intervalid = setInterval(test, 1000, 'room', 20);
私はこれ以上clearIntervalをすることができません。
clearInterval(user.intervalid); // does not work
解決方法は?
setInterval()の使用
指定した間隔でコードブロックの実行を繰り返す必要がある場合はどうすればよいでしょうか。そのために、Node には setInterval() と clearInterval() と呼ばれるメソッドがあります。setInterval() 関数は setTimeout() と非常によく似ており、コールバック関数、遅延、コールバック関数に渡すオプション引数などの同じパラメータを使用します。
setInterval()の簡単な例を以下に示します。
var interval = setInterval(function(str1, str2) {
console.log(str1 + " " + str2);
}, 1000, "Hello.", "How are you?");
clearInterval(interval);
これは、1分ごとに1つのインターバルだけを実行し続けたい場合の別の方法です。
function intervalFunc() {
console.log("Hello!!!!");
}
setInterval(intervalFunc,1500);
上記の例では、intervalFunc() は停止されるまで約1500ミリ秒(1.5秒)ごとに実行されます。これが役に立つといいのですが。
関連
-
[解決済み] package.jsonのチルダ(~)とキャレット(^)の違いは何ですか?
-
[解決済み] Node.jsのプログラムにコマンドライン引数を渡すにはどうしたらいいですか?
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み] Node.jsで終了する方法
-
[解決済み] Node.jsでファイルを書き込む
-
[解決済み] Node.jsアプリケーションをデバッグするにはどうすればよいですか?
-
[解決済み] Node.jsを完全にアンインストールして、最初から再インストールする方法 (Mac OS X)
-
[解決済み] Node.jsのmodule.exportsの目的と使い方を教えてください。
-
[解決済み] Node.jsで環境変数を読み込む
-
[解決済み] Node.jsのnpmモジュールをアンインストールするにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 再インストールを繰り返しても、npm run でモジュール 'sass' が見つからない。
-
[解決済み】"npm update -g" の後に "Cannot find module 'npmlog'" というエラーが発生する。
-
[解決済み】MongoDBでコレクションを日付で並べ替えるには?
-
[解決済み】モジュール '@babel/core' が見つかりません。
-
[解決済み] Node.jsで「btoaが定義されていない」エラーが発生する
-
[解決済み] のエラーが発生しました。これはおそらくnpmの問題ではありません。上に追加のログ出力があると思われます
-
[解決済み] ExpressJS : res.redirect()が期待通りに動作しない?
-
[解決済み] エラーです。Cannot find module 'ejs'
-
[解決済み] NPMが同じエラーで固まる EISDIR: ディレクトリに対する不正な操作、エラーで読み込み (ネイティブ)
-
[解決済み] "致命的なエラーです。grunt "コマンドを実行すると、"Unable to find local grunt. "と表示されます。