谈一谈你对闭包的理解

88 阅读1分钟

什么是闭包?

  • 一个函数以及其周边捆绑的环境生态(词法环境)的引用的组合。
  • 换而言之,闭包可以让开发者从内部函数访问外部函数的作用域。

解决的问题

  • 能够让函数作用域中的变量在函数执行完之后不被销毁,能够在函数外部访问函数内部的局部变量。

带来的问题

  • 垃圾回收器不会将闭包中的变量销毁,这就导致了内存泄露,大量内存泄露的堆积会造成内存溢出。所以需要进行手动销毁。