手写代码new 手写new 分为 4 步 新建一个空对象 将空对象的原型指向 new的函数 改变空对象的 this指向 判断 fn返回值是 引用类型 返回引用类型否则 返回新建对象 123456789function myNew(fn, ...args) { // 1. 新建一个空对象 // 2. 将空对象的原型指向 new的函数 let obj = Object.create(fn.prototype) // 3. 改变空对象的 this指向 let res = fn.apply(obj, args) // 4. 判断 fn返回值是 引用类型 返回引用类型否则 返回新建对象 return (res && typeof res === 'object') ? res : obj} #手写代码 手写代码new https://sunjc.vip/2025/07/07/手写代码new/ 作者 Sunjc 发布于 2025年7月7日 许可协议 React 组件通信 上一篇 前端主题切换:从方案到落地(暗黑模式/多主题) 下一篇 Please enable JavaScript to view the comments