相同函数名,不同形参列表的多个函数,在调用时,可根据传入的实参值列表不同,自动选择对应的函数版本,为了减少函数的个数,减轻调用者的负担。
借助arguments 对象来变通实现重载效果
js语言不允许多个同名函数,同时存在,如果强行定义多个同名函数同时存在,最后只有一个函数能存下来。
三步:
1.只定义一个函数,且不要定义任何形参变量
2.在函数内,arguments对象会自动获得将来传入的所有实参值列表
3.在函数内,可通过判断传入的实参值个数(arguments.length)或实参值内容arguments[i]不同
function pay(){
if(arguments.length==0){
console.log(`手机支付`);
}else if(arguments.length==1){
console.log("现金支付");
}else{
console.log("银行卡支付",${arguments[0]});
}
}
pay();
pay(100);
pay("3245 454 4543","1435346");