このコードスニペットがアプリケーションで見つかりました。最初の行が不要かどうか疑問に思っています-変数がすぐに上書きされる場合、変数に対してclearTimeoutを呼び出す必要がありますか?それとも私が知っておくべきいくつかの条件がありますか?
function Countdown() {
clearTimeout(sessionTimeoutHandle);
sessionTimeoutHandle = setTimeout(function () { countdownHandler() }, MILLISECONDS);
}
私の勘は「はい、clearTimeoutを呼び出す必要があります」です。タイムアウト変数をnullに設定するだけでOKの場合、clearTimeoutメソッドが存在する理由がわからないためです。
より良い質問は次のとおりだと思います。
var timeoutHandler = setTimeout(countdownHandler, MILLISECONDS);
timeoutHandler = setTimeout(countdownHandler, MILLISECONDS);
現在、約MILLISECONDSで起動を待機している関数が2つありますか、それとも1つだけですか?