在看到的一篇文章,感覺描述很清晰,為了防止自己忘記,特此理解性的記錄下來,也供大家一起學習,如有不對之處請拍案指出,謝謝。
原型鏈是針對建構函式的,比如我先建立了乙個 plane 建構函式,然後給這個函式賦予 fly 的方法,我再建立乙個 fighter 建構函式並讓其繼承 plane 物件,然後當我想要訪問 new 出來這個物件的方法或者屬性時,但是發現我並沒有給他這些方法或屬性,那麼它就會往上(向建立出它的函式中)查詢,這個查詢的過程就叫做原型鏈。
//建立乙個飛機的建構函式
function
plane
(color)
plane.prototype.
fly=
function()
// 再建立乙個戰鬥機的建構函式
function
fighter()
// new乙個 fighter原型物件使其繼承 plane,也就是打通原型鏈
fighter.prototype =
newplane
('blue');
// fighter特有方法
fighter.prototype.
shoot
=function()
var fighter1 =
newfighter()
;console.
log(fighter1.color)
;// blue
fighter1.
fly();
// flying
什麼是原型 原型物件 原型鏈?
每當宣告乙個函式的時候,系統都有乙個 prototype 原型 屬性,這個屬性是乙個指標,指向乙個物件,而這個物件的用途是包含可以由特定型別的所有例項共享的屬性和方法,稱為原型物件 在宣告了乙個函式後,這個建構函式 宣告了的函式 中會有乙個屬性prototype,這個屬性指向的就是這個建構函式 宣告...
什麼是原型和原型鏈
所有引用型別都有乙個 proto 隱式原型 屬性,屬性值是乙個普通的物件 所有函式都有乙個prototype 原型 屬性,屬性值是乙個普通的物件 所有引用型別的 proto 屬性指向它建構函式的prototype var a 1,2,3 a.proto array.prototype true 當訪...
原型鏈是什麼
j ascript的每乙個物件都有乙個隱式原型 在chrome瀏覽器中為 proto 這個隱式原型也是乙個物件,這個隱式原型物件指向建立這個物件的函式的原型 propertype 這個隱式原型物件又有個隱式原型指向創造隱式原型物件的函式的原型。當乙個物件要訪問乙個屬性或者方法時,它會首先查詢自身的屬...