当前位置: 首页 > news >正文

“箭头函数的设计初衷是简化回调、绑定词法 this”的补充说明

“ 箭头函数的设计初衷是简化回调、绑定词法 this ”的补充说明


文章目录

  • “ 箭头函数的设计初衷是简化回调、绑定词法 this ”的补充说明
  • 前言
  • 一、「词法 this」到底是什么?
  • 二、代码说明
    • 1.普通函数:this 会「跑飞」
    • 2.箭头函数:this 被「钉死」在定义时的作用域
  • 三、核心结论

前言

上篇中提到箭头函数不能作为构造函数,核心原因是箭头函数没有自己的 this,也没有 prototype,不满足构造函数的底层要求。

还提到一句话:箭头函数的设计初衷是简化回调、绑定词法 this,完全不适合扮演「构造对象」的角色,因此不能通过 new 调用,也不能作为构造函数。这里来补充对于这句话的一些理解。


一、「词法 this」到底是什么?

在 JavaScript 里,普通函数的 this 是运行时动态决定的(谁调用它,this 就指向谁),很容易在回调、定时器里「跑飞」;而箭头函数的 this 是「词法绑定」意思是:

  • 它的 this 不是在调用时确定,而是在定义它的那个代码位置(词法作用域)就固定下来了;
    • 它会捕获外层作用域(包裹它的那个函数 / 全局)的 this 值,之后再也不会改变。

二、代码说明

1.普通函数:this 会「跑飞」

代码如下(示例):

constobj={name:'Alice',sayHi:function(){console.log('sayHi里的this:',this);// 这里 this 指向 objsetTimeout(function(){// 普通回调函数:this 变成了全局对象(或严格模式下 undefined)console.log(this.name);// 输出 undefined,因为 this 不再指向 obj},100);}};obj.sayHi();

2.箭头函数:this 被「钉死」在定义时的作用域

代码如下(示例):

constobj={name:'Alice',sayHi:function(){console.log('sayHi里的this:',this);// 依然指向 objsetTimeout(()=>{// 箭头函数:捕获外层 sayHi 函数的 this(也就是 obj)console.log(this.name);// 输出 'Alice',this 没有跑飞},100);}};obj.sayHi();

三、核心结论

  • 词法 this = 定义时绑定,继承外层作用域的 this
  • 普通函数:this 看怎么调用(谁调用、用 call/apply/bind 等)
  • 箭头函数:this 看在哪定义(继承最近一层非箭头函数的 this)
  • 也正因为 this 被钉死,箭头函数不能用 new 调用(无法作为构造函数生成新对象),所以才会说「不适合扮演构造对象的角色」。
http://www.jsqmd.com/news/457146/

相关文章:

  • 捷运达加拿大清关行专业不,在浙江口碑好不好 - myqiye
  • geekez指纹生成脚本
  • 5大核心功能节省80%重复操作:BetterGI智能辅助工具全解析
  • 2026年高薪赛道盘点:这10类岗位年薪百万起步,小白程序员如何精准收藏抢占先机?
  • 日本无需进口任何部件,悄悄建造了一台量子计算机
  • 想了解oa系统操作教程视频,通达信科有免费资源吗? - 工业推荐榜
  • AI 智能体重塑软件工程:从代码风格到开发经济的变革
  • OpenAI称Codex Security一个月内发现1.1万个高危漏洞
  • 【实时Linux工业PLC解决方案系列】第二十六篇 - 实时Linux PLC抗干扰优化方案
  • 编程语言格局大洗牌:Ruby 暴跌,多语言位次变动背后的隐情
  • 2026年内蒙古地区腐植酸钠专业制造商排名,哪家性价比高? - mypinpai
  • 解决kde nero无法播放mp3音频
  • 如何用Diablo Edit2突破暗黑破坏神II的角色养成限制?
  • GPUStack MaxKB:打造强大易用的开源企业级智能体平台
  • MyBatis-缓存与注解式开发
  • COMSOL相场法模拟电介质击穿电树枝:从原理到实践
  • IL-13 Surpass ELISA试剂盒如何揭示其在哮喘等疾病中的核心作用与治疗潜力?
  • 2026支持AI自动化的国产高速PCB设计软件推荐 - 品牌2026
  • 《鬼谷子》总论—殷商后裔鬼谷间谍学院教材
  • 2026隔离门优质厂家推荐榜 - 优质品牌商家
  • showTime
  • ifrme 框
  • 大语言模型“护栏”之争:安全与自由的技术博弈
  • 2026设计仿真一体化与云端多人协同的国产PCB设计软件推荐 - 品牌2026
  • 2026整框无缝焊接系统窗品牌综合测评:五大高适配性品牌推荐及选型指南 - 博客湾
  • 恒温恒湿实验室优质厂家揭秘:不只看品牌,更要看实力与口碑 - 品牌推荐大师1
  • 2026国产高端PCB设计工具推荐:车载与手机主板双场景适用 - 品牌2026
  • 苹果 M5 Pro 和 M5 Max:架构革新下的芯片性能升级
  • OpenClaw火爆背后:全民养虾热下普通人的参与困境
  • 上海劳力士保养价格全解析:2000 元到 6000 元,差在哪? - 时光修表匠