arguments是个好东西,它能够让你在不知道函数的参数数目的情况下使用参数。
如果不使用arguments来写一个求平均值的函数,大概会是这样的:
function avgFun(arr){ //使用数组 var sum = 0; var avg = 0; for(var i=0;i<arr.length;i++){ sum += arr[i]; } return avg = sum / arr.length;}avgFun([1,2,3]); //result: 2
但如果不使用数组,而使用参数来表达每一个数字的话,由于不知道具体会有多少个参数,所以就需要使用arguments了:
function avgFun(){ var sum = 0; var avg = 0; //把所有参数都给轮一遍,有几个轮几个 for(var i=0;i<arguments.length;i++){ sum += arguments[i]; } avg = sum / arguments.length; return avg;}avgFun(1,2,3); //result: 2
新闻热点
疑难解答