javaScript過載
js不支援標準的過載方式,不允許多個同名函式同時存在,只有最後一個留下
過載
相同函式名,不同形參列表的多個函式,在呼叫時可根據傳入的實參值不同,自動選擇匹配的函式
功能程式碼
function payByPhone(){
consle.log(`手機支付`);
}
function payByMoney(money){
console.log(`現金支付`);
}
函式名過多,用同一個函式代替
function pay(){ ... }
function pay(money){ ... }
function pay(carId,pwd){ ... }
pay();
pay(money);
pay(carId,pwd);//js中不能用
js中不能用
為減少函式名個數,減輕呼叫者的負擔,不能寫多個同名函式,只能寫一個函式,寫幾個形參無法滿足所有情況,所以不寫形參。
藉助於函式內的一個特殊物件arguments來獲得實參值
arguments
每個函式內,一定都包含的一個,可直接使用的,專門接受所有傳入函式的實參值的類陣列物件
類陣列物件
長的像陣列的物件
根據argument中獲得實參值個數或實參值的內容/型別不同,來判斷,選這不同的執行過程
JS變通實現過載
function pay(){
if(arguyments.length==0){
console.log(`手機支付`);
}else if(argument.length==1){
console.log(`現金支付`);
}else{
consle.log(`刷卡支付`);
}
}
相關文章
- JavaScript函式過載JavaScript函式
- Javascript實現運算子過載JavaScript
- javascript方法過載簡單介紹JavaScript
- javascript函式過載的實現JavaScript函式
- javascript如何實現函式過載JavaScript函式
- javascript模擬實現函式過載JavaScript函式
- JavaScript中的函式過載(Function overloading)JavaScript函式Function
- javascript物件導向的方法過載的實現JavaScript物件
- 過載的奧義之函式過載函式
- java過載Java
- 重名就會被覆蓋?那JavaScript中是如何實現過載的呢?JavaScript
- JavaScript 模組載入特性JavaScript
- javascript載入順序JavaScript
- C++ 過載運算子和過載函式C++函式
- JavaScript過濾特殊字串JavaScript字串
- C++過載的奧義之運算子過載C++
- Flutter 熱過載Flutter
- 方法過載原理
- java -方法- 過載Java
- java方法過載Java
- 運算子過載
- 過載運算子
- 方法的過載
- JavaScript的繼承-轉載JavaScript繼承
- JavaScript 檔案載入方式JavaScript
- JavaScript 函式惰性載入JavaScript函式
- Java繼承中成員方法的overload(過載/過載)Java繼承
- PHP中的過載PHP
- html載入過程HTML
- 類載入過程
- python-過載Python
- Python 方法過載Python
- TypeScript 函式過載TypeScript函式
- 【Java】方法的過載Java
- Java 方法過載概念Java
- SPL 陣列過載陣列
- 字串的過載程式字串
- JAVA 方法過載(轉)Java