美文网首页
闭包是什么?

闭包是什么?

作者: YOJIN | 来源:发表于2018-10-28 21:12 被阅读0次

2018/10/28/ 看阮一峰博客有感

闭包就是能访问其他函数内部变量的函数,理解这句话可以从以下几点开始。

  1. 闭包为什么是函数?
    解释这点需要先了解 JavaScript 语言特有的一种结构--链式作用域,即为,子对象会一级一级地向上寻找所有父对象的变量。所以,父对象的所有变量,对子对象是可见的,反之则不成立。

    了解这点后,可做以下推论,外部无法访问父函数的局部变量,而子函数可以访问父函数的局部变量,只要将子函数作为返回值,就可以在外部间接访问到父函数的局部变量了。

    因此可以把闭包简单理解成"定义在一个函数内部的函数"。

    所以,在本质上,闭包就是将函数内部和函数外部连接起来的一座桥梁。

  1. 闭包的作用

    一个是前面提到的可以读取函数内部的变量,另一个就是让这些变量的值始终保持在内存中。

    父函数将子函数作为返回值,再将子函数赋值给一个变量,所以子函数会存在于内存中,而子函数依赖于父函数存在,所以父函数也会存在于内存中,也就不会被垃圾回收机制回收。

相关文章

  • Python闭包与几种装饰器浅析

    闭包 闭包是什么?闭包可以保存外部函数的变量,可以增加代码的复用性,那具体闭包的构成是什么? 1. 闭包构成条件 ...

  • 前端常见问题总结

    什么是闭包?闭包的用途是什么?闭包的缺点是什么? 什么是闭包 闭包:内部函数总是可以访问其所在的外部函数中声明的参...

  • 闭包、call-apply-bind 的用法 、HTTP状态码

    一、什么是闭包?闭包的用途是什么?闭包的缺点是什么? 答 :1、什么是闭包:如果一个函数用到了外部的变量,那么这个...

  • 闭包,call、apply、bind 的用法,HTTP 状态码

    什么是闭包?闭包的用途是什么?闭包的缺点是什么?• 闭包:如果一个函数用到了外部的变量,那么这个函数加这个变量就叫...

  • 闭包的总结

    围绕:闭包是什么?闭包的用途有哪些?闭包的缺点是什么? 这三个问题来进行总结 一、何为闭包?如果一个函数用到了外部...

  • Python 闭包使用注意点

    1 Python 闭包 今天,聊下 python 的闭包。在函数编程中经常用到闭包。 闭包是什么,它是怎么产生的及...

  • web前端必知篇:闭包的理解

    闭包这玩意,在面试的时候经常被问到。如果你还不了解,小编就简单的讲解一下! 闭包是什么,闭包的优点是什么? 闭包就...

  • 闭包是什么

    闭包是什么? 闭包是一个函数 闭包可以使用在它外面定义的变量 闭包存在定义该变量的作用域中 各种专业文献上的"闭包...

  • JavaScript 中 闭包 的详解

    闭包是什么 在 JavaScript 中,闭包是一个让人很难弄懂的概念。ECMAScript 中给闭包的定义是:闭...

  • JavaScript 中的闭包

    闭包是什么 在 JavaScript 中,闭包是一个让人很难弄懂的概念。ECMAScript 中给闭包的定义是:闭...

网友评论

      本文标题:闭包是什么?

      本文链接:https://www.haomeiwen.com/subject/ffimtqtx.html