原型 原型链

59 阅读1分钟

总有刚入门的同志说原型及原型链不好理解,我刚开始也不理解,什么鬼东西,其实自己在工作中经常打交道,但没有深入地专门去专题学过,下面我来谈一谈自己的理解。

我们都知道每个实例都有一个_proto_属性,每一个类都有一个prototype原型,那么实例是类的具体实现,再加上下面的一句代码你就明白了,原型(String)是实例(str)的一个抽象,实例(str)是原型(String)的一个具体实现,所以str上可以访问String的所有属性和方法,一个原型可以有N个实例,str就是举个例子。

image.png

在画一个图协助理解

image.png

那么什么是原型链呢?

再str中查找属性和方法时,先从自己找,找不到的话就沿着_proto_向上查找,这条查找链就叫原型链

那么原型链有什么作用呢?

可以继承使用原型的属性或者方法