arguments知识汇总

在JavaScript中, arguments 是一个类数组对象。代表传给一个function的参数列表。

function printArgs() {
   console.log(arguments);
}
printArgs("A", "a", 0, { foo: "Hello, arguments" });

Javascript并没有重载函数的功能,但是Arguments对象能够模拟重载。Javascrip中国每个函数都会有一个Arguments对象实例arguments,它引用着函数的实参,可以用数组下标的方式"[]"引用arguments的元素。arguments.length为函数实参个数,arguments.callee引用函数自身。

不确定有多少参数传递的时候,用arguments来获取。

arguments其实是当前函数的一个内置对象。数组元素作为函数的参数。

arguments对象中存储了传递的所有实参。

Arguments的展示形式是一个伪数组,可以遍历。

arguments对象和Function是分不开的。因为arguments这个对象不能显式创建。

arguments只在非箭头函数中存在,箭头函数中的arguments会从父级作用域中继承。

伪数组有以下特点

1 具有length属性

2 按照索引的方式存储数据

3 不具有数组的push,pop等方法


function func()
{
    console.log("The number of parameters is " + arguments.length);
}

func();

func(1, 2);

func(1, 2, 3);

执行结果如下:

The number of parameters is 0
The number of parameters is 2
The number of parameters is 3

arguments转换为数组的几种方式:

1. Array.from(arguments)

2. Array.prototype.slice.call(arguments)

3. [].slice.call(arguments)

4.[...arguments]

属性

arguments.callee   指向参数所属的当前执行的函数。

                                 只想调用当前函数的函数。

(function fe() {
    console.log( arguments);
}(1))

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值