原型
2017-03-17 本文已影响6人
Allan要做活神仙
JS所有函数都有一个prototype属性,该属性引用了一个对象,叫原型对象、简称原型。
什么是原型?
每个函数(对象)function都有一个prototype,即原型。
原型是一个对象,其他对象可以通过它实现属性继承。
哪些对象有原型?
每个函数(对象)function都有一个prototype,即原型。这里再加一句话——每个对象都有一个:
隐式原型_proto_
obj._proto_=== Object.prototype每个对象都有一个_proto_属性,指向创建该对象的那个构造函数的原型对象
上图中的“Object prototype”也是一个对象,它的__proto__指向哪里?
__proto__指向的是nullObject.prototype确实一个特例——它的_proto_指向的是null,切记切记!
还有——函数也是一种对象,函数也有__proto__吗?
又一个好问题!——当然有。
函数也不是从石头缝里蹦出来的,函数也是被创建出来的。谁创建了函数呢?——Function——注意这个大写的“F”。