在chrome/firefox仓库中查找特定函数的源代码有什么好的搜索策略?

ahy6op9u  于 2023-03-06  发布在  Go
关注(0)|答案(1)|浏览(121)

我目前正在学习javascript。
通常,当我学习某个东西时,我喜欢深入细节,查看源代码,并试图了解事物内部是如何真正工作的。
我试图找到JSON.stringify函数的源代码,我找到了两个存储库(一个用于chrome,另一个用于firefox)。
然而,源代码库是巨大的,我似乎不能找到我想要的,所以我只是想知道,有一个好的搜索策略,以帮助找到一个特定的东西在这样巨大的仓库?

gg58donl

gg58donl1#

我对Chrome的源代码了解不多,所以我将部分地回答Firefox的代码库,正如你所正确识别的,最新的Firefox源代码是here

搜索Firefox代码库

然而,存储库本身并不适合搜索代码库和查找函数/实现,除非您已经知道需要查找的位置:)因此,创建了几个服务来简化Firefox代码库的搜索:DXRsearchfox。这两个工具都有优点和缺点,并且相当好地完成了它们的工作。

正在查找JSON.stringify

现在,棘手的一方。我知道JS引擎位于js/src目录下(MDN文档是这么说的!)。而且JSON对象是内置对象集的一部分,就像here所描述的那样。所以我的第一个guess search试图在那个目录中寻找stringify这个词。我很幸运!显然,jsapi. h头文件在注解中提到 “ES 5指定的JSON.stringify.":注解是针对JS_Stringify()的,它在相关的jsapi.cpp文件中实现。
让我知道,如果这有帮助或您有进一步的问题!

相关问题