上節已經提到,每一個函數function都有一個prototype,即原型。這裏再加一句話——每一個對象都有一個__proto__,可成爲隱式原型。函數
obj這個對象本質上是被Object函數建立的,所以obj.__proto__=== Object.prototype。咱們能夠用一個圖來表示。spa
每一個對象都有一個_proto_屬性,☞像該構造函數的prototype.net
在說明「Object prototype」以前,先說一下自定義函數的prototype。自定義函數的prototype本質上就是和 var obj = {} 是同樣的,都是被Object建立,因此它的__proto__指向的就是Object.prototype。prototype
函數也是一種對象,函數也有__proto__對象
下一節<原JavaScript 原型總結五 instanceof>blog