arguments的用法总结
其相当于实参的一个备份,虽然有长度,但是不能使用数组的方法。
1.可以用来输出实参的真实长度,因为有时候实参传递的个数不一定和形参的个数相等,所以这种用法可以知道实际实参的个数。
function play(a,b,c){
for(var i=0;i<arguments.length;i++){
alert(arguments[i]);
}
}
play(10,20,30,40);
2.可以解决函数重名的问题,一般情况下,我们在给函数起名的时候,尽量不去使用重复的函数名,但是有时候会遇到这样的问题,就是我们许多的地方都会用到这个函数(也称为方法)但是传递的参数数量又不相同,而且还不想要重复起名字编写方法,那么就会用到arguments。
function play(){
if(arguments.length==1){
alert(arguments[0]);
}else if(arguments.length==2){
alert(arguments[0]+arguments[1]);
}
}
play(10);
play(10,20);
3.第三中方法比较简单,就是直接看实参传递的参数是什么。
function play(a,b){
alert(arguments[0]+'-'+arguments[1]+'-'+arguments[2]);
alert(arguments.length);//指的是实参的长度
}
play(10,20,30,40);