代码:
let a=20;
const b=30;
var c;
function multiply(e,f){
var g=20;
return efg
}
c=multiply(20,30);
console.log©
1、代码开始运行,创建一个全局执行上下文来执行全局代码
2、执行阶段,变量赋值完成
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MrBlv9N8-1604227767939)(C:\Users\HS\AppData\Roaming\Typora\typora-user-images\image-20201101182359665.png)]
3、创建一个新的函数执行上下文来执行该函数代码
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wrClez68-1604227767942)(C:\Users\HS\AppData\Roaming\Typora\typora-user-images\image-20201101182524628.png)]
4、函数变量赋值完成,执行上下文进入执行阶段
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YRS9lbfz-1604227767947)(C:\Users\HS\AppData\Roaming\Typora\typora-user-images\image-20201101182546311.png)]
5、该函数执行完后,返回值被储存在c中。全局词法环境更新,全局代码执行结束,程序结束