2009-04-03 4 views
2

JavaScriptの構造、つまりオブジェクトが一旦解釈されると、解釈された部分が占有するメモリ空間の構造はどのようなものなのかを調べたいと思います。それはメンバーの配列、おそらくヘッダーレコードなどを持っています。私はアセンブリコードとして単純なC関数を提示することができますか、あるいはその逆です。JavaScript内部構造の技術的な詳細はどこにありますか?

私はこのような情報を一度も見つけられませんでしたか?これは、さまざまな解釈のために非常に独占的ですか?それは誰にも知られていない秘密ですか?文字列値と文字列メタデータの大きなツリーですか?この種のものはどこで見えますか?

答えて

4

これは、さまざまな通訳者のために高い所有権を持っています。

ここ

がどのようにV8作品(クロームエンジン)上のいくつかの情報です:あなたはまた、SquirrelFishのソースコード(のWebKit/Safariなど)を見てみたいことがあり

http://code.google.com/p/v8/

...

情報:

http://trac.webkit.org/wiki/SquirrelFish ...とTraceMonkeyの(FF3.1の+)、彼らは両方とも利用できるからです。

情報:Firefoxはオープンソースであるため、https://wiki.mozilla.org/JavaScript:TraceMonkey

1

私はこれがあなたが話しているJavascriptエンジンの誰かに大きく依存すると思います。それを始めるには良い場所はGoogle Chrome's Javascript engine called V8です。このリンクをクリックすると、YouTubeでいくつかの情報が提供されます。

1

さて、あなたはコードを見て可能性が...しかし、私はあなたが探している情報は、コードから抽出するためにしばらく時間がかかるだろう、かなり確信しています。

+0

... Rhinoのソースをチェックアウトhttps://developer.mozilla.org/En/SpiderMonkey/Internalsとhttps://developer.mozilla.org/en/JSObjectは出発のカップルですポイント –

+0

リンクありがとう、ピート。 – Varkhan