2

動的にコンパイルされるのはいつですか。正しい用語についてはよくわかりません。ただし、以下のこのスニペットでは、testを呼び出すまでIIFEが実行されないため、少なくとも2倍になります。一般的に、簡単に言えば、動的コンパイルのプロセスは何ですか?

(function(){

    function test() {

        var T = (function(){
            // does not run until you call test
        }());

    }
    test();

})();
4

1 に答える 1

1

何を探しているのか正確にはわかりませんが、スニペット全体が1回解析され、抽象構文ツリーとして保存されます(または、最新のJavaScriptエンジンによってある種のバイトコードにコンパイルされます)。コメントを含むコードは、を呼び出すときに1回実行されますtest

于 2012-10-08T19:14:27.570 に答える