avatar
Articles
62
Tags
43
Categories
8
首页
文章
生活
项目
关于
我做开发那些年
Search
首页
文章
生活
项目
关于

闭包,作用域

别再被闭包 “绕晕”!3 分钟搞懂定义、形成与实战作用
Created2025-08-14
闭包,算得上是JavaScript中的一个难点,在面试时也被时常提及。 多年前的一次面试,被问及闭包时,那种脑子里一团乱麻的感觉,至今依然清晰。 本文力求以简单移动柜的语言,彻底讲清楚闭包,让读者在日后的面试和工作中,少走一些弯路,少掉一些头发。 什么是闭包?要讲清楚闭包,那么我们首先得了解闭包是什么。为此,我翻阅许多资料收集了其中关于闭包的定义: 《JavaScript权威指南(第六版)》: 函数对象可以通过作用域链相互关联起来,函数体内部的变量都可以保存在函数作用域内,这种特性在计算机科学文献中称之为“闭包”。 《JavaScript 高级程序设计》: 闭包指的是那些引用了另外一个函数作用域中变量的函数,通常是嵌套在函数中实现的。 《你不知道的JavaScript》: 函数可以记住并访问所在词法作用域,即使函数实在当前词法作用域之外执行,这就产生了闭包。 MDN: 闭包是由捆绑起来(封闭的)的函数和函数周围状态(词法环境)引用组合而成,闭包让函数能够访问它的外部作用域。 好嘛,真是一看一个不吱声,根本没有一个统一的定义。有的说闭包是特性,有的直说是怎么形成的,各...
avatar
jvxiao
全栈前端开发者 | Vue & Node.js
Articles
62
Tags
43
Categories
8
Follow Me
Recent Posts
3行命令,将 opencode 与移动端飞书连接起来2026-06-12
我在宝塔上部署一个 AI 图片去背景服务,踩了 4 个坑2026-06-09
张雪峰离世的背后:当“人生导师”输给身体,我们该反思什么2026-03-26
虚拟 DOM 要凉了?Vue 3.6 Vapor Mode 凭什么颠覆前端性能?2026-02-03
Cursor 封神,Trae 免费,Claude Code 扫地2026-01-30
Categories
  • ES6进阶11
  • Vue11
  • Vue源码阅读1
  • Web开发9
    • 网络安全1
  • life2
  • 小程序开发1
  • 搭建博客4
Tags
宝塔系统, 移除图片背景 Session 小程序 Vuex JavaScript 微信小程序 Web开发,JQuery 源码阅读 Set Cookie 依赖收集 程序人生 error 闭包,作用域 前端开发 守护进程 Vite Map Pinia Javascript 前端进阶 个人IP Node安装 JavaScript进阶 Vue, JavaScript进阶 Vue Proxy 对象存储 博客搭建 Node opencode, 飞书 npm Token MVVM React 微信云 Web开发 packages 组件 生活
Archives
  • June 2026 2
  • March 2026 1
  • February 2026 1
  • January 2026 11
  • December 2025 19
  • October 2025 3
  • September 2025 2
  • August 2025 4
Website Info
Article Count :
62
Total Word Count :
99k
Unique Visitors :
Page Views :
Last Update :
© 2025 - 2026 By jvxiaoFramework Hexo 7.3.0|Theme Butterfly 5.5.4
Search
Loading Database