函数内部声明变量的时候,一定要使用var命令。如果不用,实际上声明了一个全局变量。
闭包由来:需要从外部读取局部变量,在函数内部再定义一个函数,将内部函数作为返回值return。
闭包:定义在一个函数内部的函数。读取函数内部的变量,让这些变量的值始终保持在内存中。动态语言提供的语法糖。
闭包缺点:内存消耗大(函数中的变量都被保存在内存中),不安全(公共方法即闭包,访问私有属性!)
函数内部声明变量的时候,一定要使用var命令。如果不用,实际上声明了一个全局变量。
闭包由来:需要从外部读取局部变量,在函数内部再定义一个函数,将内部函数作为返回值return。
闭包:定义在一个函数内部的函数。读取函数内部的变量,让这些变量的值始终保持在内存中。动态语言提供的语法糖。
闭包缺点:内存消耗大(函数中的变量都被保存在内存中),不安全(公共方法即闭包,访问私有属性!)