js执行前,浏览器会给一个全局作用域windowwindow分两个模块 一个存储模块 一个执行模块存储模块 找到所有的var和function关键字 给这些变量添加内存地址执行模块 代码从上到下执行 遇到变量就回去存储模块查找 有和没有有,就看你赋值没有 赋值了就是后面的值 没有赋值就是undefined如果没找到 结果就是xxx is not defined.