JavaScript中的同步和异步
同步操作
js中下面的代码必须等上面代码执行完,才能执行 ,js本身就是单线程的操作,那么如果js要做异步,怎么做?js没有多线程,浏览器有,所以,js也可以写异步代码,只不过异步代码是在浏览器里执行的,同步代码是在js引擎里执行的
异步操作
两行代码谁也不等谁,同时执行了 - 异步代码事件循环:浏览器的异步代码等到自己能执行的条件OK了,就会进入队列中等待执行,栈内存把同步代码执行完了,从队列中取一个,执行一个,在取一个,再执行一个 - 这样形成一个小循环 - 事件循环异步代码如何在内存中运行
栈内存不仅保存了变量,代码执行也在栈内存中,栈内存判断这是异步代码就放到浏览器的线程中了,等异步代码的符合执行条件,就把异步代码放到队列中等待执行,栈内存中的同步代码都执行完毕了,开始一个一个的执行异步代码。

浙公网安备 33010602011771号