js中的闭包

1如何产生闭包(条件)?

函数嵌套、内部函数引用外部函数的局部变量、使用内部函数

注意:函数变量提升的时候如果内部函数没有被使用,在预解析的过程中不会定义内部函数

2闭包到底是什么?

理解一:闭包是嵌套的内部函数(绝大数人)

理解二:包含被引用变量(函数)的对象(极少数人)

理解三“所谓闭包是一个引用关系,该引用关系存在于内部函数中,引用的是外部函数的变量的对象(深入理解)

3.闭包的作用

(1)延长外部函数变量对象的生命周期

(2)让函数外部可以操作(读写)到内部函数的数据(变量/函数)

(3)注意:浏览器为了性能后期将外部函数中不被内部函数使用的变量清除了

4.闭包的生命周期

产生:在函数定义执行完成时就已经产生了

死亡:在嵌套的内部函数成为来及对象时

5.闭包的优缺点

优点:延长外部函数变量对象的生命周期

缺点:延长外部函数变量对象的生命周期(占内存,如果不及时清除容易造成内存溢出,泄露)

6.使用闭包时候的注意:

(1)及时清除闭包

(2)让内部的函数成为垃圾对象----》内部函数身上没有指针指向

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值