Javascript 如何延迟带参数的函数?
我正在尝试制作一个游戏,在这个游戏中,机器需要一段时间才能做出反应,因此用户实际上知道机器正在“决定”它的动作。 我需要使用Javascript 如何延迟带参数的函数?,javascript,delay,settimeout,Javascript,Delay,Settimeout,我正在尝试制作一个游戏,在这个游戏中,机器需要一段时间才能做出反应,因此用户实际上知道机器正在“决定”它的动作。 我需要使用setTimeout()方法,但我想为我的函数指定一个参数 示例:setTimeout(myFunction('p'),1000)。 问题是,当我指定参数时,函数运行得非常好,但没有延迟。当您编写setTimeout(myFunction('p'),1000)时,myFunction('p')被计算,然后setTimeout(returnValueOfMyFunction,
setTimeout()
方法,但我想为我的函数指定一个参数
示例:setTimeout(myFunction('p'),1000)代码>。
问题是,当我指定参数时,函数运行得非常好,但没有延迟。当您编写setTimeout(myFunction('p'),1000)时代码>,myFunction('p')
被计算,然后setTimeout(returnValueOfMyFunction,1000)
被计算
此代码将在正确的时间运行匿名函数:
setTimeout(function (){myFunction('p')}, 1000);
您可以像这样绑定您的函数,因此在时间过后,它将被执行:
setTimeout(myFunction.bind(这个'p'),1000)代码>只需在另一个无参数函数定义中用参数包装函数调用
例如:
setTimeout(function() {
myFunction('p');
}, 1000);
@安德烈·海伦娜如果我的回答对你有帮助,你能接受吗?