javascript繼承方式之原型鏈

字號(hào):


    原型鏈?zhǔn)窃谠头绞缴系臄U(kuò)展.原型鏈?zhǔn)峭ㄟ^(guò)prototype對(duì)象的任何屬性和方法都被傳遞給第二個(gè)類(lèi)的所有實(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í),沒(méi)有參數(shù),這是原型鏈的百兆年做法,要確保構(gòu)造函數(shù)中沒(méi)有任何參數(shù).
    當(dāng)B的prototype屬性被賦值后,B之前的方方和屬性將被銷(xiāo)毀.如果想再給B添加方法或者屬性的話(huà).
    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繼承方式原型鏈的介紹