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

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

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

  1. 创建空对象 :首先,new操作符会创建一个空对象,这个对象的隐式原型__proto__属性会被设置为构造函数的显示原型prototype属性。
  2. 设置原型链 :将新创建的空对象的隐式原型__proto__属性设置为构造函数的原型prototype,这样新创建的对象就能够访问构造函数的原型上定义的方法和属性。
  3. 调用构造函数 :接着,会调用构造函数,并将this指向新创建的空对象。在构造函数中,可以给这个对象添加属性和方法。
  4. 执行构造函数:在构造函数中,会根据定义的参数列表执行一系列操作,例如初始化实例变量、执行其他方法等。
  5. 返回对象引用:构造函数执行完毕后,如果构造函数有返回值,并且返回值是对象类型,那么就返回构造函数的返回值;如果构造函数没有返回值或者返回值不是对象类型,那么就返回新创建的空对象。
相关推荐
你的人类朋友32 分钟前
【Node&Vue】JS是编译型语言还是解释型语言?
javascript·node.js·编程语言
萧鼎39 分钟前
Python pyzmq 库详解:从入门到高性能分布式通信
开发语言·分布式·python
烛阴40 分钟前
TypeScript高手密技:解密类型断言、非空断言与 `const` 断言
前端·javascript·typescript
艾伦~耶格尔1 小时前
【集合框架LinkedList底层添加元素机制】
java·开发语言·学习·面试
样子20181 小时前
Uniapp 之renderjs解决swiper+多个video卡顿问题
前端·javascript·css·uni-app·html
yujkss2 小时前
Python脚本每天爬取微博热搜-终版
开发语言·python
yzx9910132 小时前
小程序开发APP
开发语言·人工智能·python·yolo
黑客飓风2 小时前
JavaScript 性能优化实战大纲
前端·javascript·性能优化
啊阿狸不会拉杆2 小时前
《算法导论》第 32 章 - 字符串匹配
开发语言·c++·算法
武当豆豆4 小时前
C++编程学习(第25天)
开发语言·c++·学习