首页 > 代码库 > JS中的变量及注意点

JS中的变量及注意点

 参考:

  http://www.blogjava.net/baoyaer/articles/105921.html

  http://zhidao.baidu.com/link?url=8swl8GsS3UlFcNqxXBPI0LdpIzKx0WSxP-idnhA9oCZElLY8NMwAsiIljfyRuzp0lrBeX72SoufdDUOHc0r5D_

 

程序:

 function printVar(v){      document.write(v+ ‘<br>‘);    }   printVar("*****1******"); var var10 = 0;printVar(var10 );var var11 = 1;function foo1(){         printVar(var11 );               var var11 = 1;}foo1();printVar("*****2******"); var20 = 0;printVar(var20 );var21 = 1;function foo2(){    printVar(var21);     var21 = 1;}foo2();printVar("****3*******"); var30 = 0;printVar(var30 );var31 = 1;function foo3(){    printVar(var31);     var var31 = 1;}foo3();printVar("****4*******"); var40 = 0;printVar(var40 );var41 = 1;function foo4(){    printVar(var41);     var var41 = 4;	printVar(var41); }foo4();printVar(var41); 

  输出:

*****1******0undefined*****2******01****3*******0undefined****4*******0undefined41

  

总结:

1.如果变量均强制使用var,并且变量定义在前,使用在后的话,JS中的使用域很好理解,与其他语言没有差别。

2.如果内部未使用var,则程序会向上层查找变量定义;

3.如果在本层中先使用,后定义,变量将会undefined;(尤其要注意)