5 分後にイベントを発生させようとしています。私は次のコードを使用しています:
setTimeout(tweet(name, type), 5 * 60 * 1000);
しばらくすると発火しますが、5 分近くかかりません (通常は 2 分程度ですが、すぐに発火することもあります)。私は何を間違っていますか?(代わりに時間を設定しようとしましたが300000
、同じ問題です。
5 分後にイベントを発生させようとしています。私は次のコードを使用しています:
setTimeout(tweet(name, type), 5 * 60 * 1000);
しばらくすると発火しますが、5 分近くかかりません (通常は 2 分程度ですが、すぐに発火することもあります)。私は何を間違っていますか?(代わりに時間を設定しようとしましたが300000
、同じ問題です。
すぐに呼び出しtweet
て、その戻り値を に渡していますsetTimeout
。
に関数を渡す必要がありますsetTimeout
。のコードは含まれてtweet
いませんreturn
が、関数ではないと仮定します。
setTimeout(function () { tweet(name, type); }, 5 * 60 * 1000);
Quentin のソリューションは機能しますが、次の形式を使用することもできます。
setTimeout(tweet(name, type), 5 * 60 * 1000);
function tweet(name, type) {
return function(name, type) {
};
}
いくつかの値をクロージャーに保持したい場合、いくつかのユースケースがあります。