私は私のjavascript関数で以下のコードを使用しています。10秒後にこの関数を呼び出したい。しかし、関数はすぐに起動されます!?!何が起こっているのかわからない。
<script>
function testing() {
//other stuff
setTimeout(testing2('value'), 10000);
}
function testing2(value) {
//other stuff
}
</script>
私は私のjavascript関数で以下のコードを使用しています。10秒後にこの関数を呼び出したい。しかし、関数はすぐに起動されます!?!何が起こっているのかわからない。
<script>
function testing() {
//other stuff
setTimeout(testing2('value'), 10000);
}
function testing2(value) {
//other stuff
}
</script>
testing2
あなたが引数でそれを書いたのですぐに呼び出されます。
setTimeout
最初のパラメータとして関数が必要です。
testing2('value')
もちろん、JavaScriptを作成する場合はtesting2
、最初に実行して結果を取得し、その後でのみ結果をに渡す必要があります。setTimeout
関数を呼び出すのではなく、引数として関数を渡す必要があります。
setTimeout(function(){
// Inside the callback we do what we want.
testing2('value');
}, 10000);
testing2('value')
問題は、関数ではなくから返された値をに渡してしまうことですsetTimeout
。
これを試して。
setTimeout(function() {
testing2('value');
}, 10000);