梳理 | JavaScript 原型链

本文旨在进行学习过程中的知识梳理,如有问题还望多多指教。

1、概念

F.prototype 原型属性
o.___proto____ 原型对象

___proto____ 是站在对象的角度讨论其原型对象
prototype 是站在构造函数的角度讨论原型属性, 或构造函数创建的对象的
原型对象

实例成员就是 由构造函数创建的对象的成员
静态成员就是 构造函数的成员

2、原型链

Object

Object原型链

Object原型链
var o1 = new Object();

两个Object

创建两个对象

var o1 = new Object();
var o2 = new Object();

两个Func

Func原型链

var f1 = new Func();
var f2 = new Func();

Func函数原型属性发生转向,黄色变为红色,指向f2

Func函数原型属性发生转向

var f1 = new Func();
var f2 = new Func();
构造函数与原型属性
var p = new Object()

Person对象完整原型链结构

完整原型链

var p = new Person()
p.constructor == Object.prototype.constructor //true

两个Person对象最终都指向Object.prototype对象,Object.prototype对象的proto指向null

两个对象原型链

var p1 = new Person();
var p2 = new Person();
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • JS中原型链,说简单也简单。 首先明确: 函数(Function)才有prototype属性,对象(除Object...
    前小白阅读 9,383评论 0 9
  • 原型链是一种机制,指的是 JavaScript 每个对象都有一个内置的 __proto__ 属性指向创建它的构造函...
    劼哥stone阅读 9,889评论 15 80
  •   面向对象(Object-Oriented,OO)的语言有一个标志,那就是它们都有类的概念,而通过类可以创建任意...
    霜天晓阅读 6,433评论 0 6
  • 本文主要基于一篇 MySQL Tutorial的文章,同时补充了自己的几个实践。 概述 我们在执行普通的 MySQ...
    li3p阅读 9,013评论 0 0
  • “这TM的没有意义” 郑钧第一张 个人专辑 —— 赤裸裸 发行于 —— 1994 ……灯色菩提芥园主人非台 5
    芥园主人阅读 890评论 0 0