2017-07-26 4 views
0

私は現在javascriptを勉強しています。chrome/firefoxリポジトリの特定の機能のソースコードを探すための良い検索戦略は何ですか?

通常、私が何かを勉強するとき、詳細に入り、ソースコードを見て、物事が実際に内部でどのように働くかを理解しようとします。

JSON.stringifyのソースコードを見つけようとしましたが、chromefirefoxの2つのリポジトリが見つかりました。

しかし、ソースコードリポジトリが大量で、私が欲しいものを見つけることができないようです。だから、私はちょうどそのような大規模なリポジトリで特定のものを見つけるのを助ける良い検索戦略はありますか?

+1

一般的に言えば、JavaScriptを使用する場合は、ECMA標準とMDNを勉強する方がよいでしょう。実際にJavaScriptを使用することとほとんど関係がない、さまざまなエンジンがどのように書かれているかを知りたければ、Githubとブラウザでreposを見つける方が簡単でしょう。ここでは[** V8 **](https: /github.com/v8/v8) – adeneo

+1

[JSON stringifier](https://github.com/v8/v8/blob/master/src/json-stringifier.cc) – adeneo

+1

ここに非公式V8 APIリファレンスガイドがあります(サイトはかなりクールです)。 https://v8.paulfryzel.com/docs/master/json-stringifier_8cc_source.html;) – DavidDomain

答えて

1

私はChromeのソースコードについてあまりよく知らないので、Firefoxのコードベースでこれを部​​分的に回答します。あなたが正しく特定されると、最新のFirefoxのソースコードはhereになります。

しかし、リポジトリ自体は、あなたがこのような理由:)見てする必要がありますどこが既に知っている場合を除き、機能/実装をコードベースを検索して調べるには適していませんFirefoxのコードベースを検索Firefoxのコードベースの検索を容易にするために、いくつかのサービスが作成されました:DXRsearchfox。どちらのツールも長所と短所があり、仕事はかなりうまくいっています。 JSON.stringify

さて、トリッキーなパーティーを見上げる

。私は、JSエンジンがjs/srcディレクトリ(mdn docsと言う)の下に住んでいることを知っています。 JSONオブジェクトは、hereと記載されているように、組み込みオブジェクトのセットの一部です。だから私の最初のguess searchはそのディレクトリのstringifyという単語を探すように試みました。そして私は運が良かった!明らかに、jsapi.hヘッダーファイルには、"JSON.stringify ES5で指定されたとおり"と記載されています。コメント内の:このコメントは、関連するjsapi.cppファイル内に実装されているJS_Stringify()のコメントです。

これが役立つのか、さらにご質問がある場合はお知らせください。

関連する問題