您的位置:首页 > Web前端 > JavaScript

JS setTimeout()学习笔记

2015-06-03 15:34 567 查看
我是一个前端开发新手,之前做了一年的c++计算机应用程序。现在转到自己感兴趣的前端开发把遇到的问题与共同学习的朋友分享。

开始学习时发现js没有多线程这个概念,那他是怎么实现异步的呢?一次在使用setTimeout()时发现,多次触发setTimeout()时,会运行多个setTimeout()中的函数,触发的函数在同一时间运行。clearTimeout()时要调用与setTimeout()触发次数相同的次数才能完全清除timeout。

<html>

<head>
<script type="text/javascript">
var c=0
var t

function timedCount()
{
document.getElementById('txt').value=c
c=c+1
t=setTimeout("timedCount()",1000)
}

function stopCount()
{
clearTimeout(t)
}
</script>
</head>

<body>
<form>
<input type="button" value="Start count!" onClick="timedCount()"> //多次点击按钮则多次触发
<input type="text" id="txt">
<input type="button" value="Stop count!" onClick="stopCount()">
</form>
</body>

</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息