最近在学习深入的学习javascript,看到了javascript一个特别有趣的一个知识面就是javascript方法参数的传递,在调用javascript函数的时候并不需要传递的参数和所调用的函数参数一致,函数不论是否定义参数,我们都可以传递任意个数的参数,因为ECMAScript中参数在内部是一个数组来表示,参数接收的始终 都是这个数组。
//定义一个javascript方法
列1: function howManyArgs(){
alert(arguments.length);
}
howManyArgs("string",45); //提示2
howManyArgs(); //提示0
howManyArgs(33) // 提示1
列2: function howManyArgs(){
if(arguments.length==1){
alert(arguments[0]);
}else if(arguments.length==2){
alert(arguments[0]+","+arguments[1]);
}
}
howManyArgs("string",45); //提示string,35
howManyArgs(); //无提示
howManyArgs(33) // 提示33
从以上2个列子可以看出javascript函数的所有参数都是存放在arguments者个数组中,(注意:javascript函数由于参数可以不一致,所以javascript函数方法没有重载);