美文网首页
异步和单线程

异步和单线程

作者: Gimmy呵呵 | 来源:发表于2018-09-11 21:54 被阅读0次

前端使用异步的场景

1.setTimeout setInterval函数

2、ajax请求、动态<img>的加载

3.事件绑定

(这里例子就省略啦)

(ES6新增了一个异步的情况那就是Promise,这里就不展开说了详情请看ES6入门之Promise

单线程

什么是单线程,就拿上面的第一个例子来说吧

他的执行过程其实是这样的

再举一个复杂一点的例子

下面是运行结果

执行的过程是这样的:首先是第一个setTimeout函数,需要等待的操作,暂存起来。然后下一个也是暂存起来。接下来就是执行console.log(100),在接下来又是setTImeout函数(虽然设置等待时间是0,但认为还是需要等待的操作,所以也暂存起来。)等后面的console语句执行完之后,在过来看暂存的setTimeOut函数,如果到了等待时间就执行函数里面的语句。

相关文章

网友评论

      本文标题:异步和单线程

      本文链接:https://www.haomeiwen.com/subject/ahhpgftx.html