javaScript 执行栈的理解
javaScript 执行栈的理解
当js 代码运行时, 会创建一个执行栈, 将全局的这个执行上下文 push 到执行栈中,执行函数的时候, 会创建函数的执行上下文,push 到执行栈中, 执行完以后, pop 出 执行栈。
通过一个例子来理解下
console.log('开始运行,创建来到全局执行栈')
function func1 () {
console.log('函数1 执行,创建函数1执行上下文,push 到执行栈')
func2()
console.log('函数1 执行完,将执行上下文pop出执行栈')
}
function func2() {
console.log('函数2 执行,创建函数2执行上下文,push 到执行栈')
console.log('函数2 执行完,将执行上下文pop出执行栈')
}
func1()
console.log('来到全局执行栈')