6、什么是闭包

简介: 6、什么是闭包

1、闭包


  • 函数嵌套函数,内部函数就是闭包
  • 正常情况下,函数执行完成,内部变量会销毁(释放内存空间)
  • 但闭包,内部函数没有执行完成,外部函数变量不会被销毁
  • 作用域链:就是查找数据,一层一层往上找,一直找到全局变量
<script>
  //  1、闭包:函数里面嵌套函数,里面的函数就叫做闭包
  //  2、作用域链:就是查找数据,一层一层往上找,一直找到全局变量
  //  3、正常情况下,函数执行完成,内部变量会销毁(释放内存空间)
  //  4、闭包,内部函数没有执行完成,外部函数变量不会被销毁
  let a = 10;
  let b = 20;
  function outerFun() {
    let a = 30;
    let c = 40;
    function innerFun() {
      console.log(a);  //  30
      console.log(b);  //  20
    }
    return innerFun();
  }
  let fn = new outerFun();
</script>


相关文章
|
6月前
|
缓存 JavaScript 前端开发
|
1月前
|
自然语言处理 JavaScript 前端开发
什么是闭包
【10月更文挑战第12天】什么是闭包
|
2月前
|
移动开发
浅谈H5闭包
浅谈H5闭包
|
3月前
|
存储 自然语言处理 JavaScript
闭包
闭包
11 0
|
JavaScript 前端开发
对闭包的理解以及使用
对闭包的理解以及使用
48 1
|
存储 缓存 前端开发
详解 Reat 中的闭包问题
JavaScript 中的闭包一定是最可怕的特性之一。 即使是无所不知的 ChatGPT 也会告诉你这一点。 它也可能是最隐秘的语言概念之一。 每次编写任何 React 代码时,我们都会用到它,大多数时候我们甚至没有意识到。 但最终还是无法摆脱它们:如果我们想编写复杂且高性能的 React 应用程序,我们就必须了解闭包。
103 0
详解 Reat 中的闭包问题
|
存储 JavaScript 前端开发
深入理解作用域和闭包(上)
深入理解作用域和闭包(上)
深入理解作用域和闭包(上)
|
PHP 开发者
匿名函数闭包|学习笔记
快速学习匿名函数闭包
匿名函数闭包|学习笔记
闭包的使用
闭包的使用
70 0
|
自然语言处理 JavaScript
你真的懂闭包么?
前言 本文主要总结一下 到目前为止对闭包的理解. 好几年之前学习闭包的时候模模糊糊,看了网上的一些帖子,理解为:函数内部可以使用函数外部的变量,后面看了你所不知道的JS,以为自己懂了,后面面试的时候又感觉自己不懂了,而今感觉自己真正懂了==,特此记录一下。
131 0