js基礎 繼承

2022-08-15 19:21:19 字數 1002 閱讀 1622

js 繼承是乙個非常強大的特性之一。

首先,我們定義乙個需要實現繼承的父類,

//

定義乙個人的基類

function

people (name, age)

}people.prototype.hello = function

()

1、原型鏈繼承

function

woman ()

woman.prototype = new

people();

woman.prototype.name = '小麗';

woman.prototype.age = '18';

var p1 = new

woman();

console.log(p1.name);

console.log(p1.detail());

console.log(p1.hello());

缺點:建立子類例項時,無法向父類建構函式傳參

來自原型物件的引用屬性是所有例項共享的

2、構造繼承

function woman (name, age) 

var p1 = new woman('小麗', 18);

console.log(p1.detail()); //小麗年齡:18

console.log(p1.hello()); // undefined

缺點:只能繼承父類的例項屬性和方法,不能繼承原型屬性/方法

3、組合繼承

function woman(name, age) 

woman.prototype = new people();

var p1 = new woman('小麗', 18);

console.log(p1.detail()); //夏利年齡:18

console.log(p1.hello()); //小麗,你好!

推薦3

js基礎 繼承

1 實現繼承 原型鏈 function extend1 function extend2 extend2.prototype new extend1 extend2繼承了extend1中的屬性 父型別的例項化物件賦值給子型別的原型屬性,父型別中的建構函式和原型資訊都會給extend2 var ext...

js繼承和基礎繼承小結

前兩天學習js繼承的時候覺得有點繞,子承父 父承子的一通,後來搜到一篇阮一峰大神的繼承方式的部落格學習了一下,現整理了一下主要的五種繼承方式。父構造器person,子構造器man,man是子構造器new出來的物件,只能繼承父構造器中的屬性 代表繼承屬性和方法.第二種叫原型繼承 由於person物件中...

Js基礎之物件的繼承

二 原型鏈 不了解原型鏈的請先看 一文看懂原型鏈 三 繼承方法 原型鏈繼承即採用定義子建構函式的prototype指向父類的例項的方法 本質是 父公有 父私有 子公有 function parent function child child.prototype new parent 父類的公有和私有...