ffe 03 原型

原型(prototype)是JavaScript里的一个重要概念。它本来是极简单的。但因为一些原因,原型时常让试图了解它的人感到复杂。

原型是对象的属性,它可以让一个对象从其他对象处获得额外的数据和方法。对象的原型一般也是对象,它也可以有原型,这便形成了原型链

1.设置对象的原型

可以通过如下几种方式设置对象的原型。

2.读取对象的原型

与设置对象的原型相对应,读取对象的原型有以下几种方式

3.原型有什么用?

无论通过哪种方式设置对象的原型,目的都是让对象获得额外的数据和方法

有点像是A对象在“借”B对象的属性,海棠花“借得梅花一缕魂”的那个借。比如内置的数组对象,它的原型是Array.prototype,每个数组自然就“有”了Array.prototype里的方法。

另外原型链的存在,可以让一个对象“借”得更远。比如A的原型是B,B的原型是C,那么A也可以访问C的属性。