当前位置: 首页 > news >正文

JavaScript 简单理解原型和创建实例时 new 操作符的执行操作

function Person(){// 构造函数// 当函数创建,prototype 属性指向一个原型对象时,在默认情况下,// 这个原型对象将会获得一个 constructor 属性,这个属性是一个指针,指向 prototype 所在的函数对象。
}
// 为原型对象添加方法
Person.prototype.sayName = function(){alert(this.name);
}// 据前面的 Person 构造函数我们新建一个实例
var student = new Person();console.log(student.__proto__ === Person.prototype); // true

在这里插入图片描述
使用 new 调用构造函数会执行如下操作:

在内存中创建一个新对象(空的)。
这个新对象内部的[[Prototype]]指针被赋值为构造函数的 prototype 属性。
构造函数内部的 this 被赋值为这个新对象(即 this 指向新对象)。
执行构造函数内部的代码(给新对象添加属性)。
如果构造函数返回非空对象,则返回该对象;否则,返回刚创建的新对象。
http://www.lryc.cn/news/256265.html

相关文章:

  • 生成对抗网络——研讨会
  • Ubuntu 20.04 安装 mysql8 LTS
  • 蓝桥杯:货物摆放
  • ganache部署智能合约报错VM Exception while processing transaction: invalid opcode
  • 金融银行业更适合申请哪种SSL证书?
  • 文心一言API(高级版)使用
  • C# 任务并行类库Parallel调用示例
  • 2024年江苏省职业院校技能大赛信息安全管理与评估 第二阶段学生组(样卷)
  • 飞天使-linux操作的一些技巧与知识点3
  • Appium获取toast方法封装
  • Google Guava简析
  • 反序列化漏洞详解(二)
  • React全站框架Next.js使用入门
  • 【操作系统笔记】-文件系统
  • 第二十一章 网络通信
  • 【漏洞复现】万户协同办公平台ezoffice wpsservlet接口存在任意文件上传漏洞 附POC
  • 【uniapp】小程序中input输入框的placeholder-class不生效解决办法
  • SimplePIR——目前最快单服务器匿踪查询方案
  • Spring Boot中使用Swagger
  • uniapp实战 —— 竖排多级分类展示
  • SAP UI5 walkthrough step6 Modules
  • 时间相关类
  • 数据库事务:保障数据一致性的基石
  • 自动化操作脚本
  • MVC、MVP、MVVM模式的区别
  • 【Vue】日常错误总结(持续更新)
  • java多线程(常用方法、实现方式、线程安全问题、生命周期、线程池)
  • Day05 linux高级系统设计 - 管道
  • 低代码:美味膳食或垃圾食品?
  • 免费网页抓取工具大全【附下载和工具使用教程】