经常情况下,我使用回调函数时没有相关的文档,能够看到传递给该回调函数的所有参数是非常好的。
// callback is a function that I don't know the args for...
// and lets say it was defined to be used like: callback(name, number, value)
something.doSomething( callback );
我该如何确定它传递了哪些参数?
注意:查看源代码可能无法提供帮助,因为代码本身可能是混淆和压缩的(例如许多JS框架)。
arguments
是 JavaScript 中的一个特殊对象,它包含了函数被调用时传入的所有参数。arguments
对象具有类似数组的属性,可以通过索引来访问每个参数。同时,arguments
对象也拥有一个length
属性,表示传入参数的数量。在 ES6 引入剩余参数语法后,使用arguments
的场景逐渐减少。但是,在需要灵活处理参数的情况下,arguments
仍然是一种有用的选择。需要注意的是,arguments
对象只存在于函数内部,并且无法在箭头函数中使用。 - asawyer