函数内部声明变量的时候,一定要使用var命令。如果不用的话,你实际上声明了一个全局变量!闭包访问局部变量
function f1(){ n=999; } f1(); alert(n); // 999
子函数可以一层一层读取到父元素的变量,反之不行。但假如我们需要得到函数内的局部变量,正常操作是:在函数的内部再定义一个函数,该函数称之为闭包,通过闭包,向上去读取父函数的局部变量。闭包的作用:读取局部变量;让局部变量的值始终保存在内存中。
function f1(){ var n=999; function f2(){//闭包:定义在一个函数内部的函数/能够读取其他函数内部的变量的函数/将函数内部和函数外部链接起来的一座桥梁 alert(n); // 999 } }
每天进步一点点