functiona()
functionb()
var b1 = new b();
b1.colors.push("black");
alert(b1.colors);//"red,blue,green,black"
var b2 = new b();
alert(b2.colors);//"red,blue,green"沒有被b1的修改而影響到
3、組合繼承(偽經典繼承)
1、概念:使用原型鏈實現對原型屬性和方法的繼承,而通過借用建構函式來實現對例項屬性的繼承
//定義a類建構函式
function
a(name)
a.prototype.sayname = function
()//定義b類建構函式
function
b(name,age)
b.prototype = new a();//繼承a的方法
b.prototype.constructor = b;
b.prototype.satage = function
()var b1 = new b("tom",22);
b1.colors.push("black");
alert(b1.colors);// ["red","blue","green","black"];
b1.sayname();//"tom"
b1.sayage();//22
var b2 = new b("sam",21);
alert(b1.colors);// ["red","blue","green"];
b1.sayname();//"sam"
b1.sayage();//21
js基礎 繼承
1 實現繼承 原型鏈 function extend1 function extend2 extend2.prototype new extend1 extend2繼承了extend1中的屬性 父型別的例項化物件賦值給子型別的原型屬性,父型別中的建構函式和原型資訊都會給extend2 var ext...
js基礎 繼承
js 繼承是乙個非常強大的特性之一。首先,我們定義乙個需要實現繼承的父類,定義乙個人的基類 function people name,age people.prototype.hello function 1 原型鏈繼承 function woman woman.prototype new peop...
js繼承和基礎繼承小結
前兩天學習js繼承的時候覺得有點繞,子承父 父承子的一通,後來搜到一篇阮一峰大神的繼承方式的部落格學習了一下,現整理了一下主要的五種繼承方式。父構造器person,子構造器man,man是子構造器new出來的物件,只能繼承父構造器中的屬性 代表繼承屬性和方法.第二種叫原型繼承 由於person物件中...