JavaScript闭包
javascript是基于词法作用域的语言,这意味着:
通过阅读包含变量定义在内的源码,就能知道变量的作用域。
全局变量在:程序中,始终有定义,
局部变量在:声明它的函数体以及此函数体所嵌套的函数内,始终有定义
js的垃圾回收机制
function addPrivateProperty(o,name,predicate){ var value; o["get"+name]=function(){return value;} o["set"+name]=function(v){ debugger; if(predicate && !predicate(v)) throw Error("set"+name+"invalid value"+v); else value=v;debugger; } }
var o={} addPrivateProperty(o,"Name",function(x){return typeof x == "string";})
o.setName('example')
js闭包举例
PHP闭包