I want to evaluate callback function before accepting it. This means I need to know at least the count of accepted argumens - if count doesn\'t match, I\'ll leave warning in
A function has a length property which tells you how many named arguments it accepts. Note however, a function can use the arguments
variable to access variables, even if it doesn't name them; length
doesn't cater for this (nor is there an alternative which does).
function foo(a, b) {
for (var i=0;i<arguments.length;i++) {
console.log(arguments[i]);
}
}
console.log(foo.length); // reports 2, even though `foo` can access all your arguments!
Here is shorter version var a = function(){ return [...arguments].length}