news 2026/5/8 17:35:17

如何用 bind 预设 this 指向与部分参数生成新函数

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何用 bind 预设 this 指向与部分参数生成新函数

bind生成的新函数不能被new调用,因其内部[[Construct]]不可用,调用会抛TypeError;正确做法是用闭包、工厂函数或手动实现预设逻辑。bind 生成的新函数为什么不能被 new 调用因为 bind 返回的函数内部设置了 [[Construct]] 不可用标记,一旦用 new 调用,会直接抛出 TypeError: Function.prototype.bind called on an object that is not a function(不同引擎提示略有差异,但本质一致)。这不是 bug,是规范强制行为。常见错误现象:想用 bind 预设构造器的部分参数,再通过 new 实例化——这行不通。正确做法是改用闭包或工厂函数:function createPerson(name) { return new Person(name, 'default-age'); }如果必须组合预设 + 构造,用 class 或普通函数手动实现 bind 逻辑,别依赖原生 bindChrome/Firefox 中可通过 Function.prototype.toString() 观察 bind 函数输出为 "function () { [native code] }",说明它不暴露可修改的构造逻辑bind(thisArg, arg1, arg2) 的 this 和参数到底怎么绑定bind 的第一个参数是硬绑定的 this,后续参数是“前置固定参数”,调用新函数时传入的参数会追加在它们后面。这个顺序不能反,也不支持跳过某参数占位。使用场景:事件回调、定时器、Promise 回调中避免 this 丢失,或封装常用配置的工具函数。obj.method.bind(obj, 'a') → 调用时 method('b') 等价于 obj.method('a', 'b')如果想跳过第一个参数只固定第二个,得手动写闭包:x => obj.method('a', x),bind 不支持 undefined 占位跳过注意:箭头函数没有自己的 this,对箭头函数调用 bind 无效,this 仍由外层决定bind 与 call/apply 的核心区别在哪bind 不执行函数,只返回一个新函数;call 和 apply 是立即执行,且不产生新函数。 文心快码 文心快码(Comate)是百度推出的一款AI辅助编程工具

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/8 17:35:08

告别内网穿透:ESP32-CAM直连公网服务器的TCP视频流转发方案详解

ESP32-CAM直连公网服务器的视频流架构设计与实战优化 在物联网视频监控领域,传统的内网穿透方案常常成为开发者们的技术瓶颈。想象一下这样的场景:当你需要远程查看家中宠物状态时,却因为NAT穿透失败而束手无策;或是智能农业监测…

作者头像 李华
网站建设 2026/5/8 17:34:58

非标测试设备设计:从火星车到IED干扰仪,如何验证独特工程挑战

1. 那些“非标”测试设备,值得更多尊重在电子工程这个行当里摸爬滚打了十几年,我发现自己对两类测试测量问题总是特别着迷:一类是为那些极其特殊、甚至独一无二的场景所设计的测试设备;另一类则是这些测试设备乃至整个测试流程本身…

作者头像 李华
网站建设 2026/5/8 17:34:33

使用AISBench测试deepseek-V4-Flash模型流程

1、下载AISBench安装包1.1、下载安装包 git clone https://gitee.com/aisbench/benchmark.git1.2、安装 cd benchmark执行以下命令安装 pip3 install -e ./ --use-pep517 \--timeout 600 \--default-timeout600 \-i http://mirrors.aliyun.com/pypi/simple/ \--trusted-host mi…

作者头像 李华
网站建设 2026/5/8 17:34:10

人工智能提示词场景篇:人际关系学习

人工智能提示词场景篇:人际关系学习📝 本章学习目标:掌握场景篇:人际关系学习中高效使用提示词的方法和技巧。一、引言 场景篇:人际关系学习是提示词应用的重要场景之一。本章将系统讲解如何在该领域高效使用提示词。 …

作者头像 李华