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

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

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

  1. 创建空对象 :首先,new操作符会创建一个空对象,这个对象的隐式原型__proto__属性会被设置为构造函数的显示原型prototype属性。
  2. 设置原型链 :将新创建的空对象的隐式原型__proto__属性设置为构造函数的原型prototype,这样新创建的对象就能够访问构造函数的原型上定义的方法和属性。
  3. 调用构造函数 :接着,会调用构造函数,并将this指向新创建的空对象。在构造函数中,可以给这个对象添加属性和方法。
  4. 执行构造函数:在构造函数中,会根据定义的参数列表执行一系列操作,例如初始化实例变量、执行其他方法等。
  5. 返回对象引用:构造函数执行完毕后,如果构造函数有返回值,并且返回值是对象类型,那么就返回构造函数的返回值;如果构造函数没有返回值或者返回值不是对象类型,那么就返回新创建的空对象。
相关推荐
前端程序猿i2 分钟前
前端判断数据类型的所有方式详解
开发语言·前端·javascript
我也爱吃馄饨7 分钟前
前端视角下的浏览器LNA问题
前端·javascript·chrome
二川bro16 分钟前
内存泄漏检测:Python内存管理深度解析
java·开发语言·python
何以解忧,唯有..16 分钟前
Vue 列表渲染
前端·javascript·vue.js
g***557516 分钟前
TypeScript 与后端开发Node.js
javascript·typescript·node.js
k***817217 分钟前
PHP使用Redis实战实录2:Redis扩展方法和PHP连接Redis的多种方案
开发语言·redis·php
Not Dr.Wang42220 分钟前
实验三:基于matlab的积分分离PID控制算法
开发语言·matlab
lly20240622 分钟前
Razor VB 循环:深度解析与实例教学
开发语言
Yue丶越24 分钟前
【C语言】内存函数
c语言·开发语言
前端程序猿i24 分钟前
彻底搞懂防抖(Debounce)与节流(Throttle):源码实现与应用场景
开发语言·前端·javascript·vue.js·ecmascript