2017-10-05 4 views
0

これはnodeJSで私のJSです:私はとの間隔接続すると、簡単なJavaScriptで、それは簡単な整数node.js:setIntervalとclearIntervalの使い方は?

を返すのに対し

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 
} 

:私は出力を返し

function test(a, room, seconds) { 
    console.log(a, room, seconds); 
} 

intervalid = setInterval(test, 1000, 'room', 20); 
console.log('intervalid', intervalid); 

既存のユーザオブジェクト、例:

user.intervalid = setInterval(test, 1000, 'room', 20); 

私はこれ以上てclearIntervalすることはできませんよ:のsetIntervalを使用して

clearInterval(user.intervalid); // does not work 
+0

'setInterval'の戻り値を保存したときに使用したのと同じオブジェクトであれば、うまく動作します。言い換えれば、その間に 'user'はJSONに/からJSONに変換できません。 – robertklep

+0

「単純なJavascriptでは単純なINTEGER番号を返すのですが」とはどういう意味ですか? –

+0

Jsはintを返し、nodejsはオブジェクト – yarek

答えて

2

()

何が指定した間隔であなたのコードブロックを繰り返し実行する必要がある場合は?このため、NodeにはsetInterval()およびclearInterval()というメソッドがあります。 setInterval()関数は、コールバック関数、遅延、およびコールバック関数に渡すオプションの引数などの同じパラメータを使用して、setTimeout()と非常によく似ています。

のsetInterval()の簡単な例を以下に表示されます:あなたは上記の例では、毎分

function intervalFunc() { 
    console.log("Hello!!!!"); 
    } 
    setInterval(intervalFunc,1500); 

を実行し、intervalFuncを(一つだけの間隔を維持したいとき

var interval = setInterval(function(str1, str2) { 
    console.log(str1 + " " + str2); 
}, 1000, "Hello.", "How are you?"); 

clearInterval(interval); 

これは別の方法であります)は、停止するまで約1500ミリ秒ごと、または1.5秒ごとに実行されます。お役に立てれば。

関連する問題