JavaScript堆栈操作
2021-08-02 18:02:39 0 举报
JavaScript堆栈操作绘图理解
作者其他创作
大纲/内容
let a = 12var b = ab = 10function func(value) { const defaultValue = 5 return value + a + defaultValue}func(b)
ECS
VO
EC[func]
function func(value) { const defaultValue = 5 return value + a + defaultValue}
作用域: [scope] [EC(G)]
function func -> 000xx1var blet a = 12b = ab = 10func(b)
VO[G]
在调用func时会把EC(func)压入 调用栈,执行完毕后弹出调用栈,此时所有变量都不存在引 用,所有内存清空
000xx1
1. 确定作用域链: EC[func] EC[G]2. 确定this:window3. 初始化 arguments4. 形参赋值5. 变量提升6. 代码执行
AO[func]
EC[G]
defaultValue -> 5
setTimeoutsetIntervalMathDate......b -> 10
b -> undefind -> 12 -> 10a -> 12
收藏
0 条评论
下一页