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

原型和原型链理解

这个图大概能概括原型和原型链的关系

1.对象都是通过 _proto_ 访问原型

2.原型都是通过constructor 访问构造函数

3.原型是构造函数的 prototype

4.原型也是对象实例 也是通过 _proto_ 访问原型(Object.prototype)

5.Object.prototype的原型通过 _proto_ 访问 为null

那么原型和原型是什么?

原型:任何一个JS对象在创建时会关联的一个对象,创建出来的对象能继承原型上的属性

原型链:当对象访问一个属性时,先找自身有无其属性,没有就去原型上找,因为原型也是一个对象实例,所以在构造函数原型上找不到,就会去对象原型(Object.prototype)上找

常见的面试题和解析

function Person() {}
const person = new Person()console.log(person.__proto__ === Person.prototype) // true
console.log(Person.prototype.constructor === Person) // true
console.log(Object.getPrototypeof(person) === person._proto_) // true
consoe.log(Person.prototype.__proto__ === Object.prototype)  // true
consoe.log(Object.prototype.constructor === Object) // true//见图即可
//Object.getPrototypeof返回指定对象的原型console.log(person.constructor ==== Person) // true
//因为person.constructor ,先找自身属性,没有就找原型 Person.prototype,Person.prototype.constructor 刚好就等于Personconsole.log(Object.prototype._proto_) // null
http://www.lryc.cn/news/121180.html

相关文章:

  • CSS:弹性盒子模型详解(用法 + 例子 + 效果)
  • 分类预测 | Matlab实现基于MIC-BP最大互信息系数数据特征选择算法结合BP神经网络的数据分类预测
  • 拜读苏神-1-深度学习+文本情感分类
  • 【uniapp 小程序开发语法篇】资源引入 | 语法介绍 | UTS 语法支持(链接格式)
  • Stable Diffusion教程(9) - AI视频转动漫
  • 378. 有序矩阵中第 K 小的元素
  • 商品首页(sass+git本地初始化)
  • Games101学习笔记 - MVP矩阵
  • 从零开始搭建个人博客网站(hexo框架)
  • vue的proxy代理详解
  • 计算机网络 ARP协议 IP地址简述
  • 2021年03月 Python(一级)真题解析#中国电子学会#全国青少年软件编程等级考试
  • 机器学习实战4-数据预处理
  • 项目管理师基础之项目管理计划和项目文件
  • 【单片机】DS2431,STM32,EEPROM读取与写入
  • c++11 标准模板(STL)(std::basic_stringbuf)(一)
  • flutter开发实战-WidgetsBinding监听页面前台后台退出状态
  • 父进程等待子进程退出 / 僵尸进程孤儿进程
  • 【LeetCode 75】第二十六题(394)字符串解码
  • UNIX网络编程——TCP协议API 基础demo服务器代码
  • [保研/考研机试] KY163 素数判定 哈尔滨工业大学复试上机题 C++实现
  • iOS_crash文件的获取及符号化(解析)
  • STM32定时器TIM控制
  • 网络请求中,token和cookie有什么区别
  • Javaweb_xml
  • http相关知识点
  • 【SA8295P 源码分析】68 - Android 侧用户层 输入子系统获取 /dev/input/event0 节点数据 代码流程分析
  • 走出迷宫(多组输入bfs)
  • Linux系统编程-终端、进程组、会话
  • Linux部分文件操作记录