让我们先看一段代码。


函数显示(){
警戒(ABC);
}
VaR ABC =DEFG ;
显示();


有C++或java编程经验可以说:这个程序,死了,甚至在变量的引用函数在变量的定义,错误会把你的。让我们在浏览器中运行它。结果如何完美运行!然后让我们来说明这是什么-瓦尔河和没有var定义的变量之间有区别。

1。无功

简而言之,在定义变量时省略var是不安全的,但它是合法的。此时,无论变量在何处定义,解释器都会给变量一个全局范围。

2。有无功

安全性和合法性。定义变量的范围取决于定义的位置。至于范围是什么,请参见这个blog中的Javascript范围。

这样一来,问题的开始就可以解决了,在函数中,ABC的定义只是一个未定义的值,当ABC具有全局范围时,函数只是对ABC值的更新。