私はv8のソースを勉強しています。特に、 'mksnapshot'ツールにv8バイナリのネイティブjavascriptファイル(runtime.js、json.js ...)のコンパイル済みイメージが含まれていて、ソースの(幾分)縮小版。v8で生成されたバイナリにネイティブのjavascriptのソースコードが保存されるのはなぜですか?
var $JSON=global.JSON;
function Revive(a,b,c){
var d=a[b];
if((%_IsObject(d))){
if((%_IsArray(d))){
var g=d.length;
と「json.js SRC /」の開始時に、私は以下を参照してください:はっきり
var $JSON = global.JSON;
function Revive(holder, name, reviver) {
var val = holder[name];
if (IS_OBJECT(val)) {
if (IS_ARRAY(val)) {
var length = val.length;
両方のスニペットD8の実行可能ファイルの内容を検査する際に、例えば、私は、次のスニペットを参照してくださいは同等ですが、2番目はコンパイルプロセスの最初のものに変換されました。
「toString」で検査するために元のコードが含まれていても、「JSON.stringify」をd8に入力すると「function stringify(){[native code]}」と表示されますこれのポイントは何ですか?
Google IO 2012でこの質問をしてください。 –
この件に関する私の所見は次のとおりです。このhttp://nodejs.org/api/vm.html#vm_vm_createscript_code_filenameの出力を保存して後で実行する方法はありますか? nodejsをコンパイルすると、javascriptファイルを使用していないように見えます。なぜなら、ソース内以外ではどこにも見つからないか、見つけられないからです。 – Prospero