JS函数的实参对象arguments

JS函数的实参对象arguments

感谢:尚硅谷李立超老师的讲解

在调用函数时,浏览器每次都会传递两个隐含的参数

  1. 函数的上下文对象this
  2. 封装函数实参的对象arguments
    • argument 是一个类数组(像数组但实际并不是数组)对象
    • 可以通过索引来操作数据,也可以获取长度
    • 在调用函数时,我们所传递的实参都会封装到arguments中
    • arguments.length 可以用来获取实参的长度
    • 即使不定义形参,也可以通过arguments来使用实参
      • arguments[0] :表示第一个实参
      • arguments[1]:表示第二个实参
    • arguments 中有一个属性callee,这个属性对应一个函数对象,就是当前正在指向的函数的对象
function fun(){
    console.log(arguments);
    console.log(arguments instanceof Array);//false
    console.log(Array.isArray(arguments));//false
}

fun();
在这里插入图片描述
function fun(a,b){
    console.log("arguments中的第一个实参:"+arguments[0]);
    console.log("arguments中实参的个数:"+arguments.length);
    console.log("arguments中的属性callee:\n"+ arguments.callee);
}

fun(1,2);
在这里插入图片描述
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容