原型鏈

轉自:?詳談JavaScript原型鏈?

1. 可用于動態(tài)給構造函數(shù)添加屬性或方法

通過一個構造函數(shù)創(chuàng)建出來的多個實例,如果都要添加一個方法,給每個實例去添加并不是一個明智的選擇。這時就該用上原型了。

在實例的原型上添加一個方法,這個原型的所有實例便都有了這個方法。

按照JS引擎的分析方式,在訪問一個實例的屬性的時候,現(xiàn)在實例本身中找,如果沒找到就去它的原型中找,還沒找到就再往上找,直到找到。這就是原型鏈。

2.?只有函數(shù)有prototype,對象是沒有的。

但是函數(shù)也是有__proto__的,因為函數(shù)也是對象。函數(shù)的__proto__指向的是Function.prototype。

也就是說普通函數(shù)是Function這個構造函數(shù)的一個實例。

3. instance

instanceof是判斷實例對象的__proto__和生成該實例的構造函數(shù)的prototype是不是引用的同一個地址。

是返回true,否返回false。

那怎么判斷實例是由哪個構造函數(shù)生成的呢?這時候就要用到constructor了。

實例的原型的構造函數(shù), obj.__proto__.constructor

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 為什么有的人盡享天時地利,有的人卻吃遍各種苦頭?為什么有些“壞人”過得那么好,而有些“善人”卻過得不好?真的是老天...
    陽光Sunflower閱讀 511評論 1 1
  • 2818.5.28.星期一,晴 離六、一兒童節(jié)越來越近了,孩子們的排練繼續(xù)進行,今天下午也是到了7點多,只是辛苦了...
    貴榮閱讀 249評論 0 0
  • 今天讀到了著名作家汪曾祺的一本著作《一定要愛著什么》,在這本書的前兩章,描述了花園中的種種景象,似乎花園中的一切在...
    似水流年1993閱讀 1,144評論 0 2

友情鏈接更多精彩內容