JS常見的繼承方式

2021-07-23 02:36:54 字數 1368 閱讀 9847

1.利用原型鏈prototype;

function

person

()person.prototype.show = function

()function

man()

man.prototype = new person();

var man = new man();

man.show();

console.log(man.name);

console.log(man.subname);

這種方法的弊端:1.父類的屬性不能是引用型別,不然他的子類公用這個應用型別,作修改的時候就會影響了;2.子類不能向父函式傳遞引數。

2.利用call(),偽造物件的方法;

function

person

(name,age)

function

man(name,age)

var man = new man('wozien',12);

console.log(man.name);

console.log(man.age);

function

person

(name,age)

function

man(name,age)

var man = new man('wozien',12);

console.log(man.name);

console.log(man.age);

第2,3種方法解決了第1中的弊端,但是要是繼承父類方法的話,子類都要重新分配記憶體,浪費資源,所以也是很少單獨使用的。

4.組合call+prototype,最常用的一種方式;

function

person

(name)

person.prototype.showname = function

()function

man(name,age)

man.prototype = new person();

man.prototype.showage = function

()var man = new man('wozien',12);

man.showname(); //wozien

man.showage(); //12

這是js中繼承最常用的;把子類例項獨有的屬性(包括常用和引用型別)利用call方式繼承,方法什麼的寫到原型物件中,利用原型鏈進行繼承。

js中常見繼承方式

function father father.prototype.getvalue function function son 繼承father son.prototype new father 原型重寫,contructor被改寫 son.prototype.construtor son 重新指向...

js繼承常見的幾種方式

function parent parent.prototype.get function function son name son.prototype newparent var son1 newson 奧特曼 關鍵 把子類的原型指向父類的例項,從而繼承父類的私有屬性和原型屬性 優點 父類新增的...

JS的繼承方式

js繼承有5種實現方式 1 繼承第一種方式 物件冒充 function parent username function child username,password var parent new parent zhangsan var child new child lisi 123456 pa...