我想停止执行2秒钟.这是这样,但现在遵循一个代码块:
<html>
<head>
<title> HW 10.12 </title>
<script type="text/javascript">
for (var i = 1; i <= 5; i++) {
document.write(i);
sleep(2); //for the first time loop is excute and sleep for 2 seconds
};
</script>
</head>
<body></body>
</html>
Run Code Online (Sandbox Code Playgroud)
第一次循环是执行并睡眠2秒.我想停止执行两秒钟?
Kha*_* TO 116
Javascript是单线程的,所以本质上不应该有睡眠功能,因为睡眠会阻塞线程.setTimeout是一种通过将事件发布到队列以便稍后执行而不阻塞线程来解决此问题的方法.但是如果你想要一个真正的睡眠功能,你可以这样写:
function sleep(miliseconds) {
var currentTime = new Date().getTime();
while (currentTime + miliseconds >= new Date().getTime()) {
}
}
Run Code Online (Sandbox Code Playgroud)
注意:不建议使用上述代码.
Jam*_*lin 55
暂停执行没有(安全)方式.但是,您可以使用setTimeout执行以下操作:
function writeNext(i)
{
document.write(i);
if(i == 5)
return;
setTimeout(function()
{
writeNext(i + 1);
}, 2000);
}
writeNext(1);
Run Code Online (Sandbox Code Playgroud)
Sac*_*hin 26
你可以setTimeout用来做这件事
function myFunction() {
// your code to run after the timeout
}
// stop for sometime if needed
setTimeout(myFunction, 5000);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
309006 次 |
| 最近记录: |