辩手:请你谈谈蓝本链
在后面他们早已Chambley讲了缺省,示例,蓝本,所以那时他们就来谈谈蓝本链。
以后他们讲过,蓝本只不过也会两个第一类,难道是第一类,他们也能用最原初的形式来建立他:
只不过蓝本第一类是透过 Object 建立的,以后讲过示例的 proto 对准缺省的 prototype,能认知成,Object.prototype 是大部份第一类的根第一类,因此他们能预览下列:
蓝本链
每两个第一类都有蓝本,透过 proto 对准上一个蓝本,最后对准 null,那条链存有着起点,是 Object.prototype 的蓝本是 null。
补足,易错点
1.constructor
具体来说是 constructor 特性,他们看个范例:
的蓝本也是 Person.prototype 中加载,刚好蓝本该特性,因此:
2.proto
其二是 proto ,大部分应用程序都全力支持那个冗余的形式出访蓝本,不过它并不存有于 Person.prototype 中,实际上,它是来自于 Object.prototype ,与其说是两个特性,不如说是两个 getter/setter,当使用 obj.proto 时,能认知成返回了 Object.getPrototypeOf(obj)。
3.真的是继承吗?
最后是关于继承,后面他们讲到“每两个对象都会从蓝本‘继承’特性”,实际上,继承是两个十分具有迷惑性的说法,引用《你不知道的JavaScript》中的话,是:
继承意味着复制操作,不过 JavaScript 默认并不会复制第一类的特性,相反,JavaScript 只是在两个第一类之间建立两个关联,这种,两个第一类就能透过委托出访另两个第一类的特性和函数,因此与其叫继承,委托的说法反而更准确些。