同步和异步

2020-08-18  本文已影响0人  青乌

同步概念

由于JavaScript是单线程的,在浏览器里代码按顺序执行,这就是同步。

异步概念

异步的来源:JavaScript是单线程的,一些比较耗时的代码(比如setTimeout、Ajax)会阻塞线程。为了提高代码执行的速度就有了异步。以下是异步执行顺序:

es6加了任务队列概念(供promise使用),优先级高于消息队列。所以promise会优先setTimeout先执行。

-- 单线程就好比买东西只排一个队,浏览器给提供了一个窗口即主线程。
-- DOM、AJAX、setTimeout等等是webapi,运行环境提供的,不是js的api。
-- JavaScript设计的时候它自己没有这些,所以到es6它才具有自己的异步,消息队列是浏览器(运行环境)提供的。

JS中的异步操作

1、定时器(setTimeout setInterval)
2、AJAX中一般我们都采取异步操作(也可以同步)
3.promise等异步函数

上一篇 下一篇

猜你喜欢

热点阅读