使用new 关键字调用函数,创建对象的过程中做了什么

使用new 关键字调用函数,创建对象的过程中做了什么

使用 new关键字创建对象的过程大致可以分为以下几个步骤:

  1. 创建空对象 :首先,new操作符会创建一个空对象,这个对象的隐式原型__proto__属性会被设置为构造函数的显示原型prototype属性。
  2. 设置原型链 :将新创建的空对象的隐式原型__proto__属性设置为构造函数的原型prototype,这样新创建的对象就能够访问构造函数的原型上定义的方法和属性。
  3. 调用构造函数 :接着,会调用构造函数,并将this指向新创建的空对象。在构造函数中,可以给这个对象添加属性和方法。
  4. 执行构造函数:在构造函数中,会根据定义的参数列表执行一系列操作,例如初始化实例变量、执行其他方法等。
  5. 返回对象引用:构造函数执行完毕后,如果构造函数有返回值,并且返回值是对象类型,那么就返回构造函数的返回值;如果构造函数没有返回值或者返回值不是对象类型,那么就返回新创建的空对象。
相关推荐
张元清5 小时前
useEffect 之外:专门处理异步、深比较和 SSR 的 Effect Hook
前端·javascript·面试
benpaodeDD5 小时前
视频10,11,12,13——java程序的加载与执行,安装jdk
java·开发语言
一颗牙牙5 小时前
安装mmcv
开发语言·python·深度学习
大空大地20265 小时前
C#高级语法总结
开发语言·c#
ytttr8735 小时前
DSP 28335 CAN总线通信程序
开发语言·stm32·单片机
XinZong5 小时前
OpenClaw 中最经典的 6 款skill,真正能进工作流的 skills
javascript·后端
XiYang-DING6 小时前
【Java SE】JVM
java·开发语言·jvm
小短腿的代码世界6 小时前
Qt进程间通信全体系深度解析:从QSharedMemory到本地Socket的七层武器
开发语言·qt
小陶来咯6 小时前
小智接入懒人说书MCP
java·开发语言
XinZong6 小时前
2026 AI社交深度评测:InStreet 与 ClawReach 核心差异解析
javascript