时间就像海绵里的水,要挤总仍是有的,因此在最近不是太忙的时间里,我选择了挤时间,一点点的挤出了大把的时间,因而乎便迎来了我对javascript的第二阶段的学习,首先说下, 提及JavaScript你们并不陌生,翻开各类各样的书籍,都是似曾相识但又模模糊糊朦朦胧胧,就好比我如今要说的知识点一setTimeout()和setInterval().javascript
1.setTimeout()延时调用函数:java
setTimeout(function(){ alert('我是延时调用函数'); },1000);
setTimeout能够接受两个参数,第一个参数是要肯定在规定延时后要执行的代码段,第二个参数是说要过多久开始执行该代码段,那么我再来举个例子:函数
setTimeout('alert(我是不规范的延时调用函数)',1000);
以上这两种方式均可以正常运行,可是因为传入字符串有可能会形成解析错误,甚至出现没必要要的错误,所以传入字符串做为要执行的方法是不推荐的.setTimeout()方法返回的是延时队列的id,有些同窗可能会好奇,既然我要延时调用某个方法,那万一出现了我规定时间还没到我就想销毁这个延时家在函数怎么办,对这在最初确实是个问题也是个难点,由于在我尚未开始认真思考这些的时候虽然有用到setTimeout()方法,可是就是不知道怎么中止或者销毁,下面就来看小编给你们带来的例子:学习
var timeID = setTimeout(function(){ alert('我是延时调用函数'); },1000); if(达到必定条件后销毁函数){ clearTimeout(timeID); }
以上就是我对延时加载函数setTimeout()方法的理解.spa
2.间歇调用setInterval():code
setInterval()和setTImeout()方法的用法很是类似,可是clearInterval()远比clearTimeout()的做用大的多,由于在一个间歇调用中若是你不主动去中止他,那么他将变为一个死循环甚至更糟的结果,因此若是使用到了setInterval()时间必定要记得关掉,不过在正式的开发环境中通常不多用到setInterval();由于setInterval彻底能够由setTimeout方法代替,下面咱们一块儿来看个例子:blog
var a = 10; var b = 0; var timeid = null; function interval(){ b++; if(b=a){ clearInterval(timeid); } } timeid = setInterval(interval,1000); 用setTimeout代替等价于=> var a = 10; var b = 0; var timeid = null; function interval(){ b++; if(b<a){ setTimeout(interval,1000); }else{ alert('ok') } } setTimeout(interval,1000);
这些即是我对与间歇调用和延时调用的理解,再次记录下 但愿能够帮助有帮助的朋友.队列