JS如何實現過載和多型

2021-08-20 09:52:10 字數 1366 閱讀 4266

可以理解乙個方法被不同實現後 展現不同的效果及狀態。

js本身不支援過載,所以只能通過其他方式實現,arguments檢測傳參的個數,然後再執行不同的方式

function add() 

return sum;

}alert(add());

alert(add( 1 , 2 ));

alert(add( 1 , 2 , 3 ));

function overloading() 

}

根據傳參的型別,呼叫不同的方法,用typeof

進行檢測

//檢測資料型別實現過載 typeof

var myclass=function()

var addstring=function(a,b)

this.add=function(a,b)

}function add(a,b)

function add(a,b)

var myobj = new myclass();

var x = myobj.add(5,6);

var y = myobj.add("a","ffffff");

alert(x); //結果:11

alert(y); //結果:i am hereaffffff

如果傳遞2個引數表示獲取值,傳遞三個引數表示賦值

function attr(id, key, value)else

}attr(1,2);

attr(1,2,3);

非多型**示例

var makesound = function(animal)  else if (animal instanceof chicken) 

}var duck = function(){}

var chiken = function() {};

makesound(new chicken());

makesound(new duck());

多型的**示例

var makesound = function(animal) 

var duck = function(){}

duck.prototype.sound = function()

var chiken = function() {};

chiken.prototype.sound = function()

makesound(new chicken());

makesound(new duck());

第204天 js 過載和多型

js本身不支援過載,所以只能通過其他方式實現,arguments檢測傳參的個數,然後再執行不同的方式 1 function add 6return sum 7 8alert add 9 alert add 1 2 10 alert add 1 2 3 根據傳參的型別,呼叫不同的方法,用typeof進...

多型和過載

一.多型 鏈結機制 多型 polymorphism 按字面的意思就是 多種形狀 引用charlie calverts對多型的描述 多型性是允許你將父物件設定成為和乙個或更多的他的子物件相等的技術,賦值之後,父物件就可以根據當前賦值給它的子物件的特性以不同的方式運作 摘自 delphi4 程式設計技術...

過載和多型

多型 多型是建立在重寫基礎之上,子類重寫父類方法 類之間 多型的三個條件 繼承 重寫 父類引用指向子類物件。函式名相同,函式形參相同。呼叫時根據函式型別是虛函式還是普通函式決定呼叫哪乙個。若父類中的函式被定義為虛函式,則子類對該函式的實現被稱為函式的重寫。可以通過指標訪問每乙個方法,這叫做覆蓋。若函...