在一个JavaScript文件中有很多函数,他们之间相互调用,那么如何分析他们之间的调用关系呢?

解决方案 »

  1.   

    参考堆栈的方法:
    function callStack() {
            var msg = [];
            var caller = arguments.callee;
            while (caller) {
                msg.push(caller);
                caller = caller.caller;
            }
            alert(msg.join("============\n"));
    }function b() {
        callStack();
    }function a() {
        b();
    }a();
      

  2.   

    不好意思,我是这样的需求:我读网页上,把该网页的js代码和文件全都分析出来了,保存在一个临时文件中,现在需要确定这些函数的调用关系,以便找出这么多函数的入口,这部分功能应该是用java实现的
      

  3.   

    那你是不是发错版块了,应该发到JAVA版啊。
      

  4.   

    如果用JAVA,建议可以从正则的思路去做,先拣出所有函数的名称和函数体,再在函数体内搜索其它函数的名称,就可以搞出调用关系了。
      

  5.   

    我也是这么做的,一般看到函数调用时 Go to Difination 看函数去了,在增加断点跟踪