ECMAScript中的参数在内部用一个数组来表示,在函数体内经过arguments对象来访问这个数组参数。数组
说明:函数
一、arguments对象只是与数组相似,并非Array的实例。spa
二、【】语法访问它的每个元素code
三、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);