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

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

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

  1. 创建空对象 :首先,new操作符会创建一个空对象,这个对象的隐式原型__proto__属性会被设置为构造函数的显示原型prototype属性。
  2. 设置原型链 :将新创建的空对象的隐式原型__proto__属性设置为构造函数的原型prototype,这样新创建的对象就能够访问构造函数的原型上定义的方法和属性。
  3. 调用构造函数 :接着,会调用构造函数,并将this指向新创建的空对象。在构造函数中,可以给这个对象添加属性和方法。
  4. 执行构造函数:在构造函数中,会根据定义的参数列表执行一系列操作,例如初始化实例变量、执行其他方法等。
  5. 返回对象引用:构造函数执行完毕后,如果构造函数有返回值,并且返回值是对象类型,那么就返回构造函数的返回值;如果构造函数没有返回值或者返回值不是对象类型,那么就返回新创建的空对象。
相关推荐
Tim_103 分钟前
【C++入门】04、C++浮点型
开发语言·c++
@淡 定8 分钟前
Java内存模型(JMM)详解
java·开发语言
oak隔壁找我9 分钟前
Node.js的package.json
前端·javascript
谈笑也风生9 分钟前
经典算法题型之复数乘法(二)
开发语言·python·算法
hkNaruto11 分钟前
【C++】记录一次C++程序编译缓慢原因分析——滥用stdafx.h公共头文件
开发语言·c++
支撑前端荣耀29 分钟前
从零实现前端监控告警系统:SMTP + Node.js + 个人邮箱 完整免费方案
前端·javascript·面试
先知后行。34 分钟前
python的类
开发语言·python
shanLion34 分钟前
Vite项目中process报红问题的深层原因与解决方案
前端·javascript
烟袅36 分钟前
从零构建一个待办事项应用:一次关于组件化与状态管理的深度思考
前端·javascript·react.js
派大鑫wink40 分钟前
【Day12】String 类详解:不可变性、常用方法与字符串拼接优化
java·开发语言