1. js 的变量提升往往和 函数内定义的变量和外部变量同名
例子1.
先定义的是外部变量 V,在函数里面又定义了 内容变量V,alert(v)执行的时候,实际是先在函数内创建变量v。
例子2
.
a=5,没有var,这是js中的 隐式全局变量,可以通过this 和 window进行访问
这里的执行顺序相当于
函数里面的第一行代码 a=5,没有var 说明是隐式全局变量,但因为在函数里面的,所以相当于在函数里面也定义了一个 内部变量 var a=5;,因为内部变量和外部变量重名,内部变量把外部变量覆盖,这样 内部变量值是5,外部变量变成undefined,这样通过window去访问,便是undefined。