我在我的javascript函数中使用下面的代码。我想在10秒后调用此函数。但是这个功能马上被激活了!?!不知道发生了什么。
<script>
function testing() {
//other stuff
setTimeout(testing2('value'), 10000);
}
function testing2(value) {
//other stuff
}
</script>
答案 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);