我写了一个 JavaScript函数来解析函数的参数名称,代码如下:
去除注释(inline comments)以及空格
return arg.replace(/\/\*.*\*\//,"").trim();
}).filter(function(arg) {
// 确保没有 undefined.
return arg;
});
}
正则表达式(regular expression) 是个好东西吗? 别的我不知道,但在适当的场景用起来还是很给力的!
附带一个Java取得当前函数名的方法: Java 在函数中获取当前函数的函数名
【运行结果】
getXXX getYYY
【注意】
代码第5行,stacktrace[0].getMethodName() 是 getStackTrace,stacktrace[1].getMethodName() 是 getMethodName,stacktrace[2].getMethodName() 才是调用 getMethodName 的函数的函数名。
// 注意: stacktrace里面的位置; // [1] 是“getMethodName”,[2] 是调用此方法的method