一、JS 中是否存在重载
- JS 中其实没有重载
- 当按照 Java 语法编写重载的时候,在 JS里面只会调用最后一个函数执行
- 在参数传递的时候,会将传递的参数保存到一个 arguments 的数组中保存起来,可以通过这个数组得到参数
- 虽然 JS 没有重载,但可以使用 arguments 数组模拟重载
二、JS 模拟重载
<html>
<head>
<title>oneStar</title>
</head>
<body>
<script type="text/javascript">
function fun1(){
//对arguments的length进行判断
if(arguments.length == 2){
alert(arguments[0] + arguments[1]);
}else if(arguments.length == 3){
alert(arguments[0] + arguments[1] + arguments[2]);
}else if(arguments.length == 4){
alert(arguments[0] + arguments[1] + arguments[2] + arguments[3]);
}
}
//函数调用
fun1(1,2);
fun1(1,2,3);
fun1(1,2,3,4);
</script>
</body>
</html>