Bootstrap

js中的arguments参数详解

arguments

arguments: 伪数组,打印输出为实参所有的值组成的数组

  1. arguments有一个属性叫 calleecallee 指向所对应的 function
function fun(){
  // console.log(arguments);
  console.log('arguments.callee === fun的值:',arguments.callee === fun);
}
fun('tom',[1,2,3],{name:'Janny'});
  1. 第二个属性length,我们经常在数组或者类数组中看到,可以看到arguments的原型索引__proto__的值为Object,故此我们推测arguments不是数组,而是一个类数组对象 (伪数组)。
function fun(){
  console.log(arguments instanceof Array);
  console.log(Array.isArray(arguments));
}
fun('tom',[1,2,3],{name:'Janny'});
  1. 第三个属性是个Symbol类型的键,该类型的值都是独一无二的,该键指向的值是一个values函数
;