问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

js计时器中setTimeout和setInterval的区别和使用

发布网友 发布时间:2022-04-21 23:08

我来回答

3个回答

热心网友 时间:2022-04-07 10:21

JavaScript 计时器

计时器类型:
一次性计时器(setTimeout):仅在指定的延迟时间之后触发一次。
间隔性触发计时器(setInterval):每隔一定的时间间隔就触发一次。
计时器方法:


一.计时器setInterval()       
                   

在执行时,从载入页面后每隔指定的时间执行代码。


语法:

setInterval(代码,交互时间);

参数说明:


1. 代码:要调用的函数或要执行的代码串。

2. 交互时间:周期性执行或调用表达式之间的时间间隔,以毫秒计(1s=1000ms)。


返回值:

一个可以传递给 clearInterval() 从而取消对"代码"的周期性执行的值。


调用函数格式(假设有一个clock()函数):

setInterval("clock()",1000)

setInterval(clock,1000)

我们设置一个计时器,每隔100毫秒调用clock()函数,并将时间显示出来,代码如下:

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>计时器</title>
<script type="text/javascript">
  var int=setInterval(clock, 100)
  function clock(){
    var time=new Date();
    document.getElementById("clock").value = time;
  }
</script>
</head>
<body>
  <form>
    <input type="text" id="clock" size="50"  />
  </form>
</body>
</html>

二.计时器setTimeout()       
                 

setTimeout()计时器,在载入后延迟指定时间后,去执行一次表达式,仅执行一次。


语法:

setTimeout(代码,延迟时间);

参数说明:

1. 要调用的函数或要执行的代码串。
2. 延时时间:在执行代码前需等待的时间,以毫秒为单位(1s=1000ms)。


当我们打开网页3秒后,在弹出一个提示框,代码如下:

<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript">
  setTimeout("alert('Hello!')", 3000 );
</script>
</head>
<body>
</body>
</html>

当按钮start被点击时,setTimeout()调用函数,在5秒后弹出一个提示框。

<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript">
function tinfo(){
  var t=setTimeout("alert('Hello!')",5000);
 }
</script>
</head>
<body>
<form>
  <input type="button" value="start" onClick="tinfo()">
</form>
</body>
</html>

要创建一个运行于无穷循环中的计数器,我们需要编写一个函数来调用其自身。在下面的代码,当按钮被点击后,输入域便从0开始计数。


<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript">
var num=0;
function numCount(){
 document.getElementById('txt').value=num;
 num=num+1;
 setTimeout("numCount()",1000);
 }
</script>
</head>
<body>
<form>
<input type="text" id="txt" />
<input type="button" value="Start" onClick="numCount()" />
</form>
</body>
</html>

热心网友 时间:2022-04-07 11:39

一、功能不同

1、setTimeout:方法用于在指定的毫秒数后调用函数或计算表达式。

2、setInterval:是一个实现定时调用的函数,可按照指定的周期(以毫秒计)来调用函数或计算表达式。

二、特点不同

1、setTimeout:只执行 code 一次。如果要多次调用,请使用 setInterval() 或者让 code 自身再次调用 setTimeout()。

2、setInterval:方法会不停地调用函数,直到 clearInterval被调用或窗口被关闭。


三、语法不同

1、setTimeout:setTimeout(code,millisec)中code包含形参,第一个参数传递了一个会调用所需语句的function对象,这样就解决了code带参的问题。

2、setInterval:setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。


参考资料来源:百度百科-setInterval

参考资料来源:百度百科-setTimeout()

热心网友 时间:2022-04-07 13:14

setTimeout
定时执行,在设定时间后会执行代码的内容,如
setTimeout(function(){
console.log('aa')
},1000);
在1秒后(1000毫秒)控制台打印aa
setInterval
每隔设定的时间执行一次代码,如
setInterval(function(){
console.log('aa')

},1000);
每1秒(1000毫秒)在控制台打印aa,直到使用clearInterval停止
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
沈阳到哪需要四个火小时呢?辽宁本省内 安全员能上正在搭设的外架吗 壁挂炉取暖的日费用是多少? 用壁挂炉取暖一天需要多少钱 海淀民政局周六日休息吗 漳州荔枝海公园内有近3万株荔枝树,枝繁叶茂、翠绿欲滴,有乌叶、兰竹... 永茂荔枝花园楼盘概况 外甥女的生日红包应该多少合适? 挂车爆胎轮胎放外面轮毂放里面为什么? 刷完白球鞋晒干上面有黄色的“污渍”,怎样才能不出现这种情况 什么样的血液病会遗传 javascript中setTimeout和setinterval的区别是? 厨师周工作计划怎么写 QQ密码忘记了登不上手机号也换了该怎么办? 希望知道骨髓增生异常综合征特点,还有救吗? Javascript中的setTimeout和setInterval函数的区别 餐饮主管工作计划 请简述一下settimeout和setinterval的区别,其中包... 如果忘记qq保密手机号又登不上该怎么办 餐饮员工周计划怎么写 定时器setTimeout和setInterval的区别 四五个月没有登录了QQ绑定的手机号码没用了,密码... setTimeout()和setInterval()方法的区别? 农业银行流水账单最多可以查几年? 怎么写餐饮经理工作计划 再障性贫血和MDS 是一回事么??能治好不能?会不... 公司食堂第四季度工作计划 再障性贫血会不会遗传 骨髓增生异常综合征会传染吗 骨髓增生异常综合征会遗传吗 MDS骨髓增生异常综合症能不能治愈?一般来说是什么... 摄像机里的视频怎么传到微信里 QQ密码忘了,然后注册这个QQ号的手机号也忘了,QQ... JS中SetTimeOut和SetInterval方法的区别? 骨髓增生异常综合征是怎样转变白血病 Js中setTimeout和setInterval的区别 settimeout和setinterval 有谁听说过骨髓增生异常综合症的病因和治疗方法的... jQuery 定时局部刷新,setTimeout和setInterval的区别 请问骨髓增生异常综合征是不是重大疾病,是不是在... 骨髓增生是一种什么病 AS3 setTimeOut,setInterval,Timer 的区别和用法 建筑工程公司与项目部的关系 得了骨髓增生异常综合征能结婚吗 JS setTimeout 和setInterval 的区别 我们是建筑企业,在外省有分公司,现在想成立项目... javascript的settimeout和setinterval的区别 骨髓增生异常综合征白细胞偏多 qq幸运字符是双方显示相同吗 我在中交路桥南方公司的项目部工作,调回南方公司需...