Javascript暂停

时间:2013-03-10 08:42:48

标签: javascript settimeout

我在我的javascript函数中使用下面的代码。我想在10秒后调用此函数。但是这个功能马上被激活了!?!不知道发生了什么。

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

3 个答案:

答案 0 :(得分:2)

立即调用

testing2,因为你用参数写了它 setTimeout需要一个函数作为第一个参数。

如果你写testing2('value'),javascript当然必须首先执行你的testing2以获得结果,然后才将结果传递给setTimeout

答案 1 :(得分:1)

您需要将函数作为参数传递,而不是调用函数。

setTimeout(function(){
    // Inside the callback we do what we want.
    testing2('value');
}, 10000);

答案 2 :(得分:1)

问题是您将testing2('value')而不是函数返回的值传递给setTimeout

试试这个。

setTimeout(function() {
    testing2('value');
}, 10000);