<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>变量</title> <script type="text/javascript"> var a=4; b=5;//这两个变量使用有什么区别呢? </script> </head> <body> </body> </html>
JS中变量声明分显式申明和隐式声明。
var num=100;//显式
num=100;//隐式
在函数中使用var关键字进行显式声明的变量是做为局部变量,而没有用var关键字,使用直接赋值方式声明的是全局变量。
当我们使用访问一个没有声明的变量时,JS会报错。而当我们给一个没有声明的变量赋值时,JS不会报错,相反它会认为我们是要隐式申明一个全局变量,这一点一定要注意。
不加var的写法是不推荐的。
1. 语义不清楚。
2. 团队开发时,容易覆盖掉其它作用域内的变量,引发异常。
3. 给window对象添加不必要成员。