I\'m looking to do the equivalent of Python\'s inspect.getargspec() in Javascript.
I do know that you can get the arguments list from a Jav
Sightly improved version of Jonathan Fingland's answer:
// Utility function to extract arg name-value pairs
function getArgs(args) {
var argsObj = {};
var argList = /\(([^)]*)/.exec(args.callee)[1];
var argCnt = 0;
var tokens;
while (tokens = /\s*([^,]+)/g.exec(argList)) {
argsObj[tokens[1]] = args[argCnt++];
}
return argsObj;
}
// Test subject
function add(number1, number2) {
var args = getArgs(arguments);
alert(args.toSource()); // ({number1:3,number2:4})
}
// Invoke test subject
add(3, 4);
Note: This only works on browsers that support arguments.callee.
(Also posted at How to get function parameter names/values dynamically from javascript)