美文网首页高级js
JavaScript 原型和原型链

JavaScript 原型和原型链

作者: 暴躁程序员 | 来源:发表于2021-11-14 23:39 被阅读0次

参考:https://www.cnblogs.com/loveyaxin/p/11151586.html

1.原型

原型的概念:

每一个javascript对象(除null外)创建的时候,就会与之关联另一个对象,这个对象就是我们所说的原型,每一个对象都会从原型中“继承”属性。

2.原型链

原型链的概念(以下图为例):

每个构造函数Person都有一个prototype属性指向原型对象,同时每个原型对象prototype都有一个属性constructor指向它的构造函数,
每个构造函数Person都可以创造实例化对象person,每个实例化对象都有一个__ proto __ 对象原型指向构造函数的原型对象prototype
原型对象也都有一个__ proto __ 对象原型指向上一级构造函数的prototype原型对象
以此类推,最上层是Object() 对象,再往上就是null

原型链关系图:
原型链关系图
原型链查找机制:

当我们使用实例属性的时候,首先先从实例对象上找、找不到到构造函数上找、找不到再到原型对象上找、找不到再通过原型对象的 __ proto __ 找到上父级的原型对象,先找构造函数,再找原型对象,依次类推,找不到就一直沿着__ proto __ 原型往上找

3. 常见重点关系词

1. prototype 原型对象

每个构造函数都有一个prototype属性指向它的原型对象

2. __ proto __ 对象原型(每个对象都有这个属性)

实例对象的__ proto __ 指向构造函数的原型对象
原型对象的__ proto __ 指向上一级构造函数的原型对象

3. constructor 属性

每个原型对象都有一个constructor属性,指向它的构造函数。

相关文章

  • JavaScript 原型、原型链与原型继承

    原型,原型链与原型继承 用自己的方式理解原型,原型链和原型继承 javascript——原型与原型链 JavaSc...

  • 原型和原型链篇

    原型和原型链 1.理解原型设计模式以及JavaScript中的原型规则 原型设计模式JavaScript是一种基于...

  • 原型、原型链

    (什么是原型、原型链?有什么作用) JavaScirpt深入之从原型到原型链 图解 Javascript 原型链 ...

  • js原型、原型链、继承的理解

    一、原型、原型链 原型是Javascript中的继承的基础,JavaScript的继承主要依靠原型链来实现的。 原...

  • 【javascript】继承

    javascript只支持实现继承,而且继承主要是依靠原型链来实现的。 原型链 javascript将原型链作为实...

  • 4.4 JavaScript

    4.4.1. 原型链 4.4.1.1. 显式原型和隐式原型   JavaScript的原型分为显式原型(expli...

  • 关于JS中的原型和原型链

    目录 关于js 对象和原型 原型链 基于原型链的继承 参考资料ECMAScript 6 入门JavaScript原...

  • javascript碎片知识001

    javascript中的对象(原型,原型链) 什么是原型? 原型是JavaScript中的继承的基础,JavaSc...

  • JS进阶(1) —— 人人都能懂的构造函数

    大家都知道原型和原型链是 JavaScript 中最经典的问题之一,而构造函数又是原型和原型链的基础,所以先了解清...

  • JavaScript原型对象与原型链

    一、前言 原型和原型链是 JavaScript中不可避免需要碰到的知识点,在刚开始学习 JS 时,原型和原型链都是...

网友评论

    本文标题:JavaScript 原型和原型链

    本文链接:https://www.haomeiwen.com/subject/fhcftrtx.html