有需求联系

Information

- 信息浏览 -

settimeout和setinterval之间有什么区别?

2022-04-15 830

区别:setTimeout只运行一次,也就是说设定的时间到后就触发运行指定代码,运行完后即结束;而setinterval是一直循环运行下去,即每到设定时间间隔就触发指定代码,要想停止,需要使用clearInterval()函数。

settimeout和setinterval的区别

1、setTimeout和setInterval都属于JS中的定时器,可以规定延迟时间再执行某个操作,不同的是setTimeout在规定时间后执行完某个操作就停止了;而setInterval则可以一直循环下去,要想停止,可用window.clearInterval( );

function fun(){
  alert('hello');
}
  setTimeout(fun,1000);//参数是函数名
  setTimeout('fun()',1000);//参数是字符串
  setInterval(fun,1000);
  setInterval('fun(),1000');

在上述代码中,无论是setTimeout还是setInterval,在使用函数名作为调用句柄时不能带参数,使用字符串调用时可以带参数。例如:setTimeout(‘fun(name)’,1000);

2、不再单独再定义一个函数,直接将函数调用放在一个函数里面,可以使用函数名作为调用调用句柄。

function fun(name){
  alert('hello'+' '+name);
}
setTimeout (function(){
  fun('Tom');
},1000);//参数是函数名

在上述代码中,setTimeout和setInterval的区别就是setTimeout延迟一秒弹出’hello’,之后便不再运行;而setInterval则会隔一秒弹出’hello’,直至用clear来清除定时器的语法。

Copyright © 2024 镇江小蚂蚁信息科技有限公司 All Rights Reserved.