一、js预解析是什么?
其实就是对程序要用到的材料(变量,函数)给一个初始值,并存到一个表中,当程序运行到那一行时,就来这个表看有没有初始值,没有就报错
二、在什么情况下会进行预解析?
1、遇到js标签对时;
2、遇到函数时;
三、js对什么进行预解析?
1、函数传参的变量
2、var后面的变量
3、函数
四、js会给这些变量、函数赋予什么初始值
1、凡是传参,直接赋值参数;
2、凡是var的,都会赋予一个undefined作为初始值
3、凡是函数,直接赋予函数本身作为初始值;所以这就是为什么我们可以把 函数调用 放到 函数声明 之前的原因)
五、什么情况会改变 预解析 赋予的初始值呢?
有赋值功能的符号:=, +=, -=, *=, /=, ++, --等