一.先预处理后执行 在一个JavaScript文件或一个JavaScript代码块的内部,浏览器会先对代码进行预处理(编译),然后再执行. 预处理会跳过执行语句,只处理声明语句,同样也是按从上到下按顺序进行的.包括变量和函数在内的所有声明都会在任何代码被执行前首先被处理. 即使声明是在调用的下方进行的,但浏览器仍然先声明再调用(执行),这个现象叫做“提升”.所以,即便一个函数的声明在下方,在前面仍然可以正常执行这个函数. 注意1:对于声明并赋值的语句,例如 var a = 1,在预处理阶段会把这…