arguments 是一个对应于传递给函数的参数的数组对象
1、什么 arguments
简单来说:arguments 是一个对应于传递给函数的参数的类数组对象
arguments 对象是所有(非箭头)函数中都可用的局部变量。你可以使用 arguments 对象在函数中引用函数的参数。此对象包含传递给函数的每个参数,第一个参数在索引 0 处。例如,如果一个函数传递了三个参数,你可以以如下方式引用他们:
1 | arguments[0]; |
参数也可以被设置:
1 | arguments[0] = "value"; |
arguments 是一个对象,不是一个 Array 。它类似于 Array ,但除了 length 属性和索引元素之外没有任何 Array 属性。例如,它没有 pop 方法。但是它可以被转换为一个真正的 Array :
1 | // 由于arguments不是 Array,所以无法使用 Array 的方法,所以通过这种方法转换为数组 |
2.arguments 与剩余参数、默认参数和解构赋值参数的结合使用
1 | function func(a) { |
3.当非严格模式中的函数没有包含剩余参数、默认参数和解构赋值,那么 arguments 对象中的值会跟踪参数的值(反之亦然)。看下面的代码:
1 | function func(a = 55) { |
- 本文作者: 不想
- 本文链接: https://evacat.top/2021/12/14/js/js函数中的arguments/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!