你以为正确的事情,到最后发现是错误的,这是怎样的一种心情;
大家似乎都有这样一种共识,使用var 声明的变量是局部变量,不使用var 直接写变量名是全局变量,
然后代码中一实验,发现效果确实是符合预期的,但是这个认知却是不正确的;
<script>
function test(){
var abc = 123;
def = 234;
console.log(window);
}
test();
</script>
我们通过上面的例子,打印一下window对象:
我们可以看到我们定义的def只是window 对象的一个属性,而不是变量;