使用setTimeout延迟执行

Aut*_*cus 3 javascript javascript-events

JavaScript的超时功能是

setTimeout(fun, 3600);
Run Code Online (Sandbox Code Playgroud)

但是,如果我不想运行任何其他功能,该怎么办?我可以setTimeout(3600);吗?

dav*_*com 11

根据你所说的,你只是试图在一个函数中延迟执行.

比方说,你想要运行一个警报,再过2秒后再发一次警告,如下所示:

alert("Hello")
sleep
alert("World")
Run Code Online (Sandbox Code Playgroud)

在javascript中,实现此目的的唯一100%兼容方法是拆分功能.

function a()
{
alert("Hello")
setTimeout("b()",3000);
}
function b()
{
alert("World");
}
Run Code Online (Sandbox Code Playgroud)

您也可以像这样在setTimeout本身内声明该函数

function a()
{
  alert("Hello");
  setTimeout(function() {
    alert("World");
  },3000);
}
Run Code Online (Sandbox Code Playgroud)

  • `setTimeout()`接受一个函数*然后*一个延迟,也试图避免传递字符串,只是`setTimeout(b,3000);`会这样做. (2认同)

Ben*_*Ben 6

我不确定你要做什么.如果你想在一段时间后什么也不想发生,为什么你首先需要一个setTimeout()