前序
作为一个有理想有抱负的前端攻城狮,想要走向人生巅峰,我们必须将我们的开发语言练到出神入化的地步,我们在日常工作中,接触最多的语言就是JavaScript了,为了写出最完美的、最装逼的、最炫酷的代码,我们必须对JavaScript有一个非常透彻的理解,也只有这样我们才能随心所欲的去编写自己的代码。好了,废话不多说,接下来我们就来看看JS中的执行机制到底是怎样的呢?
执行机制中的关键词
1 call-stack 调用堆栈
调用堆栈简单来说就是当前文件执行上下文中的表达式以及被调用的函数所构成的(未被调用的函数不存在调用堆栈中)
英文好的同学可以去WIKI百科查看详细讲解:
https://www.en.wikipedia.org/wiki/Call_stack#FRAME-POINTER
2 macro-task 宏任务
宏任务是JS中的异步执行任务,在执行call-stack
时,JS 引擎会将所有宏任务放入宏任务队列中;下面是JS
中的宏任务:
- setTimeout
- setInterval
- setImmediate
- requestAnimationFrame
3 micro-task 微任务