重载:根据传入参数不一样,动态决定调用哪一种方法
原因:js不支持重载,重复声明,覆盖掉了
可以使用arguments对象模拟重载
没有重载时
function go(a,b){
console.log(a+b)
}
function go(a){
console.log(a);
}
go(20)
go(20,30)
arguments对象模拟重载
function show(){
if(arguments.length == 2){
console.log(arguments[0]+arguments[1])
}else if(arguments.length == 1){
console.log(arguments[0])
}
}
show(20)
show(20,30)