ECMAScript中的参数在内部用一个数组来表示,在函数体内通过arguments对象来访问这个数组参数。
说明:
1、arguments对象只是与数组类似,并不是Array的实例。
2、【】语法访问它的每一个元素
3、length属性确定传递参数的个数
function inner(){ //arguments console.log(arguments.length); //获取该函数传参的个数 console.log(arguments[0]); //索引是0的正整数(索引从0开始) } inner(10,2);
function add(num1,num2){ arguments[0]=99; //在非严格模式下,参数被arguments对象通过下标进行修改了。 console.log(num1); } add(55,88); //99
function login(n1,n2,n3){ var userName=prompt("请输入用户名"); var userPwd=prompt("请输入密码"); var sure=prompt("请输入验证码"); if(!isNaN(arguments[1])){ alert("密码错误"); //密码不是数字,提示’密码错误‘ } if(arguments[2].length<4){ alert("验证码不小于4位"); } } login(userName,userPwd,sure);
//求任意一组数的平均值 function getAvg(){ var sum = 0,len = arguments.length,i;
for(i=0,i<len;i++){
sum+=arguments[i];
}
return sum/len; }
var avg = getAvg(5,66,35,76);
console.log(avg);