1.JS解析步骤: a.预解析 将变量声明提升: 将函数声明及函数内容提升,可以理解成原来位置的函数在解析代码时已经提到代码初始位置: 遇到重名,只留下一个: 如有重名变量和函数,留下函数: 如有两个重名函数,后一个函数覆盖前一个函数: firefox不能预解析块内定义的函数,出于兼容性考虑,定义函数,一般要放到最外面 (注意:变量提升的是声明,函数提升的是声明和内容) b.逐行解析代码 遇到表达式,可以修改预解析的变量值,例如变量赋值可以将函数声明替换掉: 2.如果有几个script代码部分,…