//--Need a way to set a delay here--\\\
var result = ['Rock', 'Paper', 'Scissors',][Math.floor(Math.random() * 3)]
cpuReply.value = result
//--end of script--\\\
好的,所以我试图在这两行代码之前找到一种方法来添加延迟。我听过很多关于使用.delay的建议,但我不知道如何定义它,如果我这样做,通常会说出意想不到的数字
delay(5000)
var result = ['Rock', 'Paper', 'Scissors',][Math.floor(Math.random() * 3)]
cpuReply.value = result
我不确定是否输入了延迟(告诉我它是否错误)并请帮我解决这个问题。
答案 0 :(得分:2)
window.setTimeout就是你要找的东西。
请记住它是异步的,因此其他事情可以(并且将会)在超时功能之外执行。 setTimeout
比其他选项更受欢迎,因为它是"非阻塞"。 IE :它不会导致网页在等待时冻结。
请记住:不应使用setTimeout来测量时间。这是因为当超时完成时,函数会被添加到callstack中,因此您无法保证它会立即执行。
window.setTimeout(function(){
var result = ['Rock', 'Paper', 'Scissors',][Math.floor(Math.random() * 3)]
cpuReply.value = result
}, 5000);// time is in 1000ths of a second
答案 1 :(得分:-1)
如何使用
setTimeout()
像这样的东西
setTimeout(function () {
var result = ['Rock', 'Paper', 'Scissors',][Math.floor(Math.random() * 3)]
cpuReply.value = result
}, 5000);