js里不支持重载的语法,但有时需要在做一件事时,根据传入参数的不同,执行不同的操作。(同一个函数名不会被覆盖,避免定义更多函数,节省资源)。在所有函数里都有一个叫arguments的类数组对象。虽然它不能使用数组里的API,但是它可以for循环遍历,且有下标和length属性。
举一个简单的栗子:
function pay(){
if(arguments.length==0) console.log(“Alipay”);
else if(arguments.length==1) console.log(‘pay for ${arguments[0]}’);
else{console.log(‘num${arguments[0]},pwd${arguments[1]}’)}
}pay(123,456);