javascript深入理解系列文章网址
https://www.jianshu.com/p/451eed9094f5
为了在函数内部能够调用所有的参数,所以就有了arguments
arguments对象包含了函数运行时的所有参数,arguments[0]就是第一个参数,arguments[1]就是第二个参数,以此类推。这个对象只有在函数体内部,才可以使用。
通过arguments对象的length属性,可以判断函数调用时到底带几个参数。
1.与数组的关系:
虽然arguments很像数组但是他是一个对象,也就是所谓的类似数组的对象
数组的slice方法可以将类似数组的对象变成真正的函数
var arr = Array.prototype.slice.call(arrayLike);
2.callee 属性
arguments对象有一个callee对象,用来返回对应的原函数
可以通过arguments.callee起到调用函数自身的目的
参考:https://wangdoc.com/javascript/types/function.html#arguments-%E5%AF%B9%E8%B1%A1
网友评论