JS的繼承方式

2021-06-22 05:01:36 字數 2044 閱讀 9626

js繼承有5種實現方式:

1、繼承第一種方式:物件冒充

function parent(username)

} function child(username,password)

} var parent = new parent("zhangsan");

var child = new child("lisi","123456");

parent.hello();

child.hello();

child.world();

2、繼承第二種方式:call()方法方式

call方法是function類中的方法

call方法的第乙個引數的值賦值給類(即方法)中出現的this

call方法的第二個引數開始依次賦值給類(即方法)所接受的引數

function test(str)

var object = new object();

object.name = "zhangsan";

test.call(object,"langsin");//此時,第乙個引數值object傳遞給了test類(即方法)中出現的this,而第二個引數"langsin"則賦值給了test類(即方法)的str

function parent(username)

} function child(username,password)

} var parent = new parent("zhangsan");

var child = new child("lisi","123456");

parent.hello();

child.hello();

child.world();

a、第乙個引數與call方法的第乙個引數一樣,即賦值給類(即方法)中出現的this

b、第二個引數為陣列型別,這個陣列中的每個元素依次賦值給類(即方法)所接受的引數

function parent(username)

} function child(username,password)

} var parent = new parent("zhangsan");

var child = new child("lisi","123456");

parent.hello();

child.hello();

child.world();

4、繼承的第四種方式:原型鏈方式,即子類通過prototype將所有在父類中通過prototype追加的屬性和方法都追加到child,從而實現了繼承

function person()

person.prototype.hello = "hello";

person.prototype.sayhello = function()

function child()

child.prototype = new person();//這行的作用是:將parent中將所有通過prototype追加的屬性和方法都追加到child,從而實現了繼承

child.prototype.world = "world";

child.prototype.sayworld = function()

var c = new child();

c.sayhello();

c.sayworld();

5、繼承的第五種方式:混合方式

混合了call方式、原型鏈方式

function parent(hello)

parent.prototype.sayhello = function()

function child(hello,world)

child.prototype = new parent();//將父類的方法繼承過來

child.prototype.sayworld = function()

var c = new child("zhangsan","lisi");

c.sayhello();

c.sayworld();

JS 繼承方式

原型鏈繼承 所謂原型鏈繼承,就是根據js原型鏈的特性而實現的一種繼承方式。原型鏈特性 每個函式都自帶有乙個prototype屬性指向該函式對應的原型物件,而原型物件又會有乙個屬性指向該函式。而通過new 建構函式出來的例項,會有乙個屬性指向原型物件。1 原型鏈繼承 2 function supert...

js 繼承方式

父類 定義乙個動物類 function animal name 原型方法 animal.prototype.eat function food 1.原型繼承 核心 將父類的例項作為子類的原型 function cat cat.prototype new animal cat.prototype.na...

js繼承方式

一.原型鏈繼承 function parent function son son.prototype new parent 原理 子類的原型物件指向父類的例項。缺點 1.子類例項共享子類原型物件的引用屬性。2.建立子類的時候不能向父類建構函式傳參。二.建構函式繼承 function parent f...