一个标识符代表了变量或者是函数的引用
一个变量名或者函数的名字,在哪些地方能够使用,这些能够让这个标识符被正确引用的地方就是这个标识符的作用域
作用域一般来说ES5:function var 就跟作用域有关 ==> 函数的代码不运行就没有里面的标识符的生命,函数调用的时候
1.先进行扫描(预编译),
2.再运行脚本
1、扫描的时候会把内部的所有var和function修饰的标识符加到一个对象中去 ==》 AO

函数运行时, 产生一个作用域
1、先把内部变量和形参声明了(变量不赋值,形参赋值实现数据)
2、然后把函数隐式的做提升,函数提升会把脚本一起做提升
3、按照函数体内部的代码逻辑(js的单线程执行任务)执行代码
4、函数被调用时 是在它声明的地方(作用域去执行代码)
本文探讨了JavaScript中函数作用域的创建过程,包括变量和函数的声明阶段、执行阶段,以及函数提升和变量提升的概念。在函数运行时,内部变量和参数会被预先声明,而函数则会被整体提升。理解这些机制对于编写可维护的JavaScript代码至关重要。

被折叠的 条评论
为什么被折叠?



