-
闭包的概念
-
函数嵌套函数,被嵌套的函数称为闭包函数
-
-
闭包的作用
-
可以在函数体外使用局部变量(浅显一点的理解)
-
属性和方法都是有共有和私有的要求
-
通常来说,所有的属性都是私有的,所有的方法都是共有的,
-
外界修改私有属性应该只能通过类提提供的公用方法来实现
-
-
闭包的柯里化
-
只有一个参数,返回值是一个函数的函数
-
作用
-
柯里化实际是把简单的问题复杂化了,但是在复杂化的同时,我们使用函数拥有了更多的自由度
-
对于函数自由的处理,正是柯里化的核心所在,柯里化的核心是降低通用性,提高适用性
-
-
-
-
闭包的实现
-
在父函数中定义一个局部变量(就是沙盒变量)和一个子函数,在子函数中操作沙盒变量,将子函数作为父函数的返回值,在外界通过全局变量来绑定父函数的返回值,从而实现了闭包,
-
-
闭包的缺陷,闭包会打破垃圾回收机制,可能会造成内存泄漏
-
垃圾回收机制
-
对象在创建后需要销毁空间,而销毁空间的工作是由垃圾回收机制来完成的,称为GC机制
-
1.引用计数法
-
在程序的任何位置使用到了该变量,计数器就+1,停止了使用就-1,
-
当使用a变量的代码块销毁时,则计数器-1,当计计数器再次减到0时,该变量销毁
-
-
优点:简单,概念清晰,效率高
-
缺点:遇到循环引用计数法无法实现
-
-
2.标记法
-
一个变量进入该作用域是,给一个标记,离开该作用域时收回标记,然后销毁
-
-
-
26 闭包
最新推荐文章于 2024-08-22 14:32:34 发布