定时器

1,setTimeout(间隔延迟时间运行 以后不会运行)

1)全局作用域(window)下的内置函数

图片.png

2)返回值:
setTimeout(function,dely),定时器的编号
3)运行机制--异步

 console.log("strat....");
 setTimeout("console.log("1")",1000);
 console.log("end....");
 //输出:
            start....
            end....
            1

第一个参数是字符串、函数名、匿名函数
总结运行机制:
例子一:

 setTimeout("console.log("1")",0);
 一大段代码需要运行1000ms

原理:1000ms后一大段代码运行完成,立马输出1
例子二:

 setTimeout("console.log("1")",1000);
一大段代码需要运行1000ms

原理:1000ms后一大段代码运行完成,立马输出1
例子三:

 setTimeout("console.log("1")",1000);
一大段代码需要运行2000ms

原理:2000ms后一大段代码运行完成,立马输出1

执行到setTimeout,把执行函数放到队列里面,后面的所有代码放到队列里面,执行后面的所有代码,当后面的所有代码都执行完成后如果时间已经到了,立马输出setTimeout的函数的结果。

注意:延迟时间只是一个近似的时间,如:
延迟0ms :10ms后执行
延迟9ms :10ms后执行
延迟11ms:20ms后执行
4)函数使用的特点
正确写法:
setTimeout(fn,1000);//直接是函数的名称没有括号,1000毫秒后执行
setTimeout(fn(),1000);//fn()是函数执行,这里读到fn()时,会立即执行函数

2,setInterval(间隔设置时间运行,再过延迟时间运行)

图片.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 从JS执行机制说起 浏览器(或者说JS引擎)执行JS的机制是基于事件循环。 由于JS是单线程,所以同一时间只能执行...
    love2013阅读 926评论 0 1
  • 1.什么是闭包? 有什么作用 定义:闭包就是嵌套在函数里面的内部函数,并且该内部函数可以访问外部函数中声明的所有局...
    饥人谷区子铭阅读 992评论 0 2
  • 原文地址:→传送门 写在前面 setTimeout()是大家再熟悉不过的定时器,但平时对定时器的了解甚少,于是想看...
    楼心漫阅读 1,401评论 3 6
  • 一、什么是定时器 JS提供了一些原生方法来实现延时去执行某一段代码,下面来简单介绍一下 setTimeout: 设...
    SSSSSSH阅读 952评论 1 50
  • 你明知道这火花可以灼伤你 却还义无反顾的全力以赴 你明知道这一切幻象都不过是个骗局 却还天真的相信这一切都是真的 ...
    雪落无痕hh阅读 116评论 0 0