我试图从我的问题中给出一个国外的图片。假设我有一个函数,在这个函数内部我有一些其他的函数调用,最后,第一个函数返回一个值。
function a() {
return 1;
}
function b() {
var result = a();
return 2 + result;
}
b();
现在,在调用 b() 方法之后,我想知道在 b() 函数内部调用了多少个函数以及调用了哪些函数。我怎样才能实现它?
我试图从我的问题中给出一个国外的图片。假设我有一个函数,在这个函数内部我有一些其他的函数调用,最后,第一个函数返回一个值。
function a() {
return 1;
}
function b() {
var result = a();
return 2 + result;
}
b();
现在,在调用 b() 方法之后,我想知道在 b() 函数内部调用了多少个函数以及调用了哪些函数。我怎样才能实现它?
没有正统的方法可以做到这一点。但是,您可以做相反的事情,通过访问 a() 中的函数 a() 来找出是谁调用了函数 a arguments.callee.caller
()。
但是,如果你真的很想找出你的函数中调用了哪些函数,你总是可以b.toString()
手动解析代码:)
你需要一个 AST 生成器。使用这样的 javascript解析器。