[筆記] js原型鏈

js原型鏈中的object.__proto__ 和object.prototype的區別

1)每一個對象都有.__proto__屬性
2)每一個構造函數(函數也是對象,但對象不必定是函數)都具備.prototype屬性(prototype是構造函數獨有的屬性)
3)每一個對象的__proto__指向自身構造函數的prototypehtml

一、函數的例子 函數

clipboard.png

clipboard.png

clipboard.png

clipboard.png
說實話被繞得好暈[笑哭!]spa

clipboard.png

clipboard.png

二、對象的例子prototype

clipboard.png

clipboard.png

本文是照着http://www.cnblogs.com/libin-...這上面的講解,驗證了一下,加深本身對原型鏈的理解。自身理解不深,有答案說.__proto__===.constructor.prototype是不對的,若是一個對象時經過Object.create函數構造出來的,那其.__proto__就不必定指向.constructor.prototype了。code

clipboard.png
不知真假,因此特地試了一下,出現這樣的緣由是person2的原型對象指向的是person1htm

person1.isPrototypeOf(person2);  //true
相關文章
相關標籤/搜索