代码改变世界

随笔档案-2011年08月

深入理解什么是javascript中的闭包(转载)

2011-08-29 22:29 by 爱研究源码的javaer, 562 阅读, 收藏,
摘要: 深入理解什么是javascript中的闭包。闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。一、变量的作用域 要理解闭包,首先必须理解Javascript特殊的变量作用域。变量的作用域无非就是两种:全局变量和局部变量。Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。Js代码 var n=999; function f1(){ alert(n); } f1(); // 999另一方面,在函数外部自然无法读取函数内的局部变量。Js代码 function f1(){ var n=999; } a... 阅读全文