代码运行之预解析与作用域
作者:互联网
代码运行之预解析与作用域(代码如何运行)
预解析
在代码执行前,会对代码进行一次预解析
预解析的内容:
声明式函数 (告诉浏览器,这是一个被定义了的函数)
var 关键字 (告诉浏览器,这是一个被定义的变量,但是不会解析到赋值)
PS:当预解析时,函数名和变量名重复时,会以函数为重
预解析的无理处:(不理判断条件,变量都会被解析??)
if条件内不管是否满足条件都会进行解析
return 后面也会进行解析
作用域
全局作用域
一个页面打开就是一个全局作用域
私有作用域/函数作用域
只有函数会生成私有作用域
变量在作用域中的使用规则
定义规则
定义在哪个作用域就只能在那个作用域以及子级的作用域进行使用。
赋值规则
当在一个作用域里对一变量进行赋值时,如果在本作用域里找不到,就会往上级找,如果到全局作用域也没有,会自动定义这个变量为全局变量
访问规则
当需要使用一个变量时,先在本作用域进行寻找,没有就会往上级找,如果全局作用域也没有,会报错**xxx is not defined**
标签:函数,之预,作用域,定义,代码运行,全局,解析,变量 来源: https://www.cnblogs.com/33I77/p/12498539.html