原型和原型链的扯淡
Posted 落落月
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了原型和原型链的扯淡相关的知识,希望对你有一定的参考价值。
一、首先谈谈原型
每个对象都有个属性prototype,名为原型,是一个指针属性,该属性指向一个原型对象;
而原型对象也有一个指针属性constructor,该指针指向原型对象的实例的构造函数;
构造函数实例化之后的实例则是存在_proto_属性,该属性指向构造函数的原型对象;
实例的constructor == prototype.constructor;
二、原型链
接下来用一段形象的话记录我对原型的感悟:
把构造函数看成是一个人,然后prototype是人的一个属性:基因,该基因指向一个细胞,也就是原型对象,而细胞也有一个属性,叫做组织属性(constructor),使用这个属性,细胞就可以组织成一个人,所以说原型对象(细胞)的constructor(组织)指向构造函数(人);所谓继承,也就是将细胞的基因传给子代,即实例是一个子代,实例的属性来自上一代的细胞里的基因;从而实现了继承;
择日搞个图出来更形象。
以上是关于原型和原型链的扯淡的主要内容,如果未能解决你的问题,请参考以下文章