function example(){n=1;}example();alert(n); // 1夹不到菜,怎么让大人帮忙?就好比小孩在饭桌上吃饭,由于手比较短,只能在自己力所能及的范围内夹菜,也就是夹自己面前的菜(执行环境);但是我们可以借用闭包(大人帮忙)的方式来夹别的菜。
当我们需要得到函数内的局部变量时,正常情况下,是取不到的,只有通过巧妙的方法去实现。
解决方法:就是在自己的函数内部在定义一个函数E,然后再将函数E的值 return 回去,不就可以被访问了。废话少说,上菜!!!
function example(){var n=1;function example2(){alert(n);}return example2;}var result=example();result(); // 1好像有点明白了,但是怎么用呢?闭包不仅可以读取函数内部的变量,上面也提到了,还能让这些变量的值始终保持在内存中。
我们再来看下面这个例子
function example1(){var n=1;Add = function(){n+=1}function example2(){a...
阅读全文