0

私は私のjavascript関数で以下のコードを使用しています。10秒後にこの関数を呼び出したい。しかし、関数はすぐに起動されます!?!何が起こっているのかわからない。

<script>
  function testing() {
    //other stuff
    setTimeout(testing2('value'), 10000);
  }
  function testing2(value) {
    //other stuff
  }
</script>
4

3 に答える 3

2

testing2あなたが引数でそれを書いたのですぐに呼び出されます。
setTimeout最初のパラメータとして関数が必要です。

testing2('value')もちろん、JavaScriptを作成する場合はtesting2、最初に実行して結果を取得し、その後でのみ結果をに渡す必要があります。setTimeout

于 2013-03-10T08:44:05.763 に答える
1

関数を呼び出すのではなく、引数として関数を渡す必要があります。

setTimeout(function(){
    // Inside the callback we do what we want.
    testing2('value');
}, 10000);
于 2013-03-10T08:45:01.770 に答える
1

testing2('value')問題は、関数ではなくから返された値をに渡してしまうことですsetTimeout

これを試して。

setTimeout(function() {
    testing2('value');
}, 10000);
于 2013-03-10T08:45:59.490 に答える