2018-7-30 seo達人
如果您想訂閱本博客內容,每天自動發到您的郵箱中, 請點這里
寫在前面:
如果讓用簡單的幾句話說一下什么是原型,或者給原型下個定義,我覺得還是有點困難的,困難之處在于即使說了之后,對于聽的人來說,估計也是一頭霧水。不過,關于原型的一些基本的東西還是要說明的,這些基本的東西差不多就可以構成一個對原型的理解。首先,原型是函數才有的一個屬性;其次,原型就是一個對象,我們可以給它添加屬性或方法;最后,原型的作用是實現對象屬性的繼承。
每個對象都有一個隱藏的
每個函數都有一個
對象是沒有
通過原型
什么是原型鏈?
typeof在判斷引用數據類型時只能返回object和function,不能準確判斷引用數據類型時數組還是對象。而instanceof可以很好用于判斷引用數據類型。
用法:
instanceof是通過判斷對象
1、什么是對象?
對象就是屬性的集合;
2、對象與函數的關系?
對象都可以看做是由構造函數Object實例化生成的;
函數都可以看做是由構造函數Function實例化生成的;
構造函數Object也是由構造函數Function生成的;
1、原型prototype
__proto__
屬性,__proto__
屬性指向創建該對象的函數的原型prototype
;
prototype
屬性,其prototype
屬性值是一個對象;
prototype
屬性的,函數是沒有__proto__
屬性的;
prototype
,可以實現對象屬性的繼承,即創建在構造函數原型上的方法和屬性可以被所有由該構造函數生成的實例所共享;
2、原型鏈
原型鏈描述的是對象的繼承圖譜(類似于家譜圖),當訪問一個對象的屬性的時候,會在該對象中進行查詢,如果在該對象中沒有查詢到,則會沿著該對象的__proto__
線進行查詢,直到查詢到該屬性或者到Object.prototype,這樣層層向上查詢的線路就是該對象的原型鏈。
3、instanceof
A instanceof B
A
的原型鏈上是否存在B
的原型來確定A的數據類型;