arguments对象是一个类数组对象,它包含了传递给一个函数的参数。
arguments对象
arguments
对象是一个类数组对象,它包含了传递给一个函数的参数,在函数内部,可以使用arguments
对象来访问这些参数。arguments
对象的长度由传递给函数的参数个数决定,即使没有传递任何参数,它也有一个长度为0的属性。
![arguments对象_对象-图1 arguments对象_对象-图1](http://www.100e.cn/zb_users/upload/2024/06/20240606230311171768619157231.jpeg)
属性名 | 描述 |
length | 返回传递给函数的参数个数 |
callee | 对函数本身的引用,可以用来实现递归调用 |
prototype | 指向Object.prototype ,因此可以访问所有继承自Object 的方法和属性 |
name | 函数的名称(非标准属性) |
constructor | 指向创建当前对象的构造函数(非标准属性) |
toString() | 返回函数体的字符串表示形式(非标准方法) |
valueOf() | 返回函数体的原始值(非标准方法) |
以下是一个简单的示例:
function sum() { let total = 0; for (let i = 0; i < arguments.length; i++) { total += arguments[i]; } return total; } console.log(sum(1, 2, 3)); // 输出:6 console.log(sum(4, 5, 6, 7)); // 输出:22
![arguments对象_对象-图2 arguments对象_对象-图2](http://www.100e.cn/zb_users/upload/2024/06/20240606230311171768619145194.png)