使用angularjs的api代码。对这个功能感兴趣。不理解它是如何得到多个匹配的。例如,在语句中,是使用args、1和arg。
var FN_ARGS = /^function\s*[^\(]*\(\s*([^\)]*)\)/m;
var STRIP_COMMENTS = /((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg;
function anonFn(fn) {
// For anonymous functions, showing at the very least the function signature can help in
// debugging.
var fnText = fn.toString().replace(STRIP_COMMENTS, ''),
args = fnText.match(FN_ARGS);
if (args) {
return 'function(' + (args[1] || '').replace(/[\s\r\n]+/, ' ') + ')';
}
return 'fn';
}所以..。
anonFn(function(a, b) { return a + b;})
// args = ["function (a, b)", "a, b", index: 0, input: "function (a, b) {return a + b;}"]我知道args2和on是标准输出的一部分,如果每个msdn没有全局设置的话
但是-如何同时返回“函数(a,b)","a,b",.作为匹配的例子?最初认为这是我对Sting.prototype.match不了解的东西,现在,我认为这是我对正则表达式不了解的东西--但是
这个检查是在RegExr 链接中进行的吗?它只显示了匹配的-‘函数(a,b)’
其他链接:这是我的柱塞,这里是src页面angularjs anonFn
发布于 2014-12-21 15:15:18
https://stackoverflow.com/questions/27590666
复制相似问题