Arguments的使用

Arguments是伪数组,可以获取函数中传入的参数.

不是数组对象,不能直接调用数组的方法,可通过call或者apply调用.

可以通过设定length动态改变arguments长度.

例:

function avg(){

  var num =0,l = 0;

  for(var i = 0;i<arguments.length;i++){

    if(typeof arguments[i] != "number")

      continue;

    num += arguments[i];

    l++;

  }

  num /= l;

  return num; 

}

alert(avg(1,2,3,4));

alert(avg(1,2,"3",4));

arguments的callee属性为获取对当前函数的引用

例:

function  f(a,b,c){

  var m = arguments.length;

  var n =  arguments.callee.length;

  if(m != n){

    alert("error!")

  }else{

    return a+b+c;

  }

}

alert(f(2,2,4));

原文地址:https://www.cnblogs.com/julyys/p/4480625.html