美文网首页
js的同步与异步

js的同步与异步

作者: 工藤新二_cad2 | 来源:发表于2018-02-01 10:28 被阅读0次

js的同步与异步(setInteral和setTimeout)

1.javascript引擎是单线程的--JavaScript引擎同一时间只执行一条代码,所以每一个JavaScript代码执行块会 “阻塞”其它异步事件的执行

2.异步事件:鼠标点击,计时器被触发,或者Ajax异步请求

3.这些事件的回调函数将排在执行队 列的最后等待执行,等待下一次恰当的时间再执行(实际上,排队的方式根据浏览器的不同而不同,所以这里只是一个简化)

4.setInterval不会考虑当前正在执行什么,而把所有的堵塞的函数排到队列尾部。这意味着两次setInterval回调函数之间的时间间隔会被牺牲掉(缩减)

5.当没有任何程序等待JavaScript引擎执行,javascript代码块就不会阻塞异步的回调函数,会依次立即执行队列里排好的一个个函数。

总结:单线程的javascript引擎一次只会做一件事,同步的执行javascript代码块时,时不时会触发异步操作,就回将异步的回调函数一个个按照先后顺序放进队列去等待执行,由于队列是先进先出后进后出的,所以当同步的javascript代码块执行完成后,就会执行顺序队列中的操作。如果定时器被正在执行的代码阻塞了,它将会进入队列的尾部去等待执行下一次可能执行的时间出现,有可能超过它设定的延迟时间.

aaaaa

相关文章

  • js加载同步还是异步? JSONP原理?

    1、浏览器端的js加载默认是同步还是异步?同步,可以人为设置异步;async让js异步加载,需要每个script标...

  • JS中的同步异步

    目录 1. 在JS中,什么是同步异步? 2. JS中常见的异步代码 1. 在JS中,什么是同步异步? 通俗解释一下...

  • js的同步与异步

    js的同步与异步(setInteral和setTimeout) 1.javascript引擎是单线程的--Java...

  • js的同步与异步

    JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。那么,为什么JavaScript不...

  • UNIX 的5种IO模型介绍

    IO模型同步、异步、阻塞、非阻塞socket阻塞与非阻塞,同步与异步 同步和异步 同步/异步主要针对C端-同步就像...

  • ES6系列之Promise

    本篇目录 JS 同步与异步 常见异步处理回调函数事件监听Deferred对象 Promise对象概念 Promis...

  • 简述JS执行机制 Event Loop

    1.同步异步 JS是单线程的,由上至下排队执行任务代码。为了提高JS的性能又区分为 同步任务 和 异步任务。同步任...

  • 浏览器JS事件循环

    单线程 js引擎使用一个主线程来执行js代码,所以js同时仅能执行一个任务。 同步任务与异步任务 同步任务 在主线...

  • 【Node.js】读取文件

    在node.js里,读取文件分为 同步读取 和 异步读取。 同步读取: fs.readFileSync() 异步读...

  • JS 函数的执行时机

    1.同步和异步的区别 我们都知道JS里面有同步和异步的区别,怎么理解同步和异步呢。一家餐厅吧来了5个客人,同步的意...

网友评论

      本文标题:js的同步与异步

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