原型鏈?zhǔn)窃谠头绞缴系臄U(kuò)展.原型鏈?zhǔn)峭ㄟ^prototype對(duì)象的任何屬性和方法都被傳遞給第二個(gè)類的所有實(shí)例.
function A()
{
this.name = "原型鏈";
this.show_name = function(){alert(this.name);}
}
function B(){}
B.prototype = new A();//這是的原型鏈的形式.
原型鏈,吧B的prototype屬性設(shè)置為A的實(shí)例,這樣B就有了A的方法和屬性.在調(diào)用A的構(gòu)造函數(shù)時(shí),沒有參數(shù),這是原型鏈的百兆年做法,要確保構(gòu)造函數(shù)中沒有任何參數(shù).
當(dāng)B的prototype屬性被賦值后,B之前的方方和屬性將被銷毀.如果想再給B添加方法或者屬性的話.
B.show_new = function(){alert(this.name)};
var objA = new A();
objA.show_name();//輸出"原型鏈"
var objA.name = "原型鏈2";
objA.show_name();//輸出"原型鏈2"
var objB = new B();
objB.show_name();//輸出"原型鏈"
objB.name = "原型鏈2";
objB.show_name();//輸出"原型鏈2"
objB.show_new();//輸出"原型鏈2"
以上就是對(duì)javascript繼承方式原型鏈的介紹
更多信息請(qǐng)查看IT技術(shù)專欄