我们有一些数据需要放在一个私有空间--->我们发现函数的作用域是私有的(块级作用域)--->我们创建了一个函数--->里面有我们存放的私密数据--->执行这个函数,私密数据创建并初始化--->我们需要通过一些特殊的方法在公共空间访问函数里面的数据--->闭包
闭包就是能够读取其他函数内部变量的函数。由于在Javascript语言中,只有函数内部的子函数才能读取局部变量,因此可以把闭包简单理解成"定义在一个函数内部的函数"。
1.Javascript的变量作用域:全局变量和局部变量。全局变量会带来全局变量”污染“,但是局部变量又导致了函数外部无法读取函数内的局部变量。所以就有了闭包的概念
2.闭包特性:
2.1:函数嵌套这函数
2.2:函数内部可以引用外部的参数和变量
2.3:参数和变量不会被垃圾回收机制回收
实习第三十一天(Javascript函数闭包)
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 作用域和闭包是 JavaScript 最重要的概念之一,想要进一步学习 JavaScript,就必须理解 Java...
- 第3章 基本概念 3.1 语法 3.2 关键字和保留字 3.3 变量 3.4 数据类型 5种简单数据类型:Unde...