js 繼承是乙個非常強大的特性之一。
首先,我們定義乙個需要實現繼承的父類,
//定義乙個人的基類
function
people (name, age)
}people.prototype.hello = function
()
1、原型鏈繼承
functionwoman ()
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 父類的公有和私有...