Javascript 中一般用 var 来定义变量。也可以不用var定义变量。但是二者还是有区别的。
我们看这个
<html> <head> <title>js1.html</title> <script type="text/javascript"> var globe = "globe"; //globe 在 function()外边,肯定是全局变量。 test(); //调用 test() function test() { globe2 = "globe2"; //这里的 globe2 虽然在方法体内,但而且前面没有 var,就是全局变量了。 var local = "local"; //这里的 local 在方法体内,而且前面有 var,是局部变量。 document.writeln(globe); document.writeln(globe2); document.writeln(local); } document.writeln(globe); document.writeln(globe2); //globe2 是全局变量,会被打印出来。 document.writeln(local); //因为 local 是局部变量,不会被打印出来。 function test2() { var i = 3; alert (i); i = true; alert (i); } </script> </head> <body> <br> <script type="text/javascript"> document.write("hello world"); </script> <br> <a href="#" onclick="alert('谢谢单击!')">请单击</a> <br> <input type="button" value="click me" onclick="test2();"> </body> </html>
打印结果:
globe globe2 local globe globe2
<略>