建構函式的prototype
的__proto__
預設指向object.prototype
,是繼承object
。
function
animal
(age)
animal.prototype.
getage
=function()
animal.prototype.
eat=
function()
function
dog(name, age)
dog.prototype.__proto__ = animal.prototype;
dog.prototype.
getage
=function()
let d1 =
newdog
('d1',12
)console.
log(d1.
getage()
)console.
log(d1.
eat())
console.
log(dog.prototype.constructor === d1.__proto__.constructor)
所有建構函式的原型都指向function.prototype
,因為建構函式是函式。所有原型指向繼承的原型,原型是物件,所以function.prototype
的原型指向object.prototype
。
dog
繼承animal
繼承object
js繼承,原型鏈繼承
1 乙個型別的物件能夠訪問另外乙個型別的屬性和方法 2 類與類之間的關係 類就是眾多例項共有的屬性和方法的乙個抽象 function animal name animal.prototype.say function function dog 把子類的原型指向父類的例項 dog.prototype ...
js原型鏈繼承
function foo var foo newfoo console.log foo.proto foo.prototype true console.log foo.proto foo.constructor.prototype ture function foo var foo newfoo ...
js原型鏈繼承
方式1 原型鏈繼承 1.套路 1.定義父型別建構函式 2.給父型別的原型新增方法 3.定義子型別的建構函式 4.建立父型別的物件賦值給子型別的原型 5.將子型別原型的構造屬性設定為子型別 6.給子型別原型新增方法 7.建立子型別的物件 可以呼叫父型別的方法 2.關鍵 1.子型別的原型為父型別的乙個例...