哪里可以找到javascript本机函数源代码?
在哪里可以找到本机js函数的源代码,例如,我想在JavaScript引擎的源代码中查看哪里可以找到javascript本机函数源代码?,javascript,function,native-code,Javascript,Function,Native Code,在哪里可以找到本机js函数的源代码,例如,我想在JavaScript引擎的源代码中查看eval()function。Chrome和Firefox都是开源的,您可以在这些产品的源代码中查看JavaScript引擎的任何部分的实现。其他浏览器有自己的实现(如IE),公众无法查看 Chrome v8 javascript引擎如下所示: Firefox SpiderMonkey引擎如下: 警告,如果您还不熟悉这些产品及其工具,可能需要一段时间才能熟悉到您要查找的内容。Javascript是一种脚本语言,
eval()
function。Chrome和Firefox都是开源的,您可以在这些产品的源代码中查看JavaScript引擎的任何部分的实现。其他浏览器有自己的实现(如IE),公众无法查看
Chrome v8 javascript引擎如下所示:
Firefox SpiderMonkey引擎如下:
警告,如果您还不熟悉这些产品及其工具,可能需要一段时间才能熟悉到您要查找的内容。Javascript是一种脚本语言,在浏览器的代码库中实现。这意味着脚本语言可能有不同的实现,具有不同的质量级别,并且可能对所需内容有不同的解释。因此,在处理不同的web浏览器时,许多web开发人员都会遇到重重挫折
如果浏览器是开源版本,您可以检查浏览器的Javascript实现,例如:Chrome、Firefox,如其他答案所示。也取决于哪个版本……只想指出:
eval
尤其是整个引擎(或者至少是整个引擎的入口点)。这里有很多JavaScript引擎可以看。我可以在线查看代码吗?记住,源不是JavaScript——通常是C或C++。(否则它就不是本地的!)@ASD-V8(谷歌Chrome中使用的引擎)在这里:@jfriend00,这对你来说可能很明显,但对海报来说肯定不明显,否则他就不会问这个问题了。如果这是显而易见的,那么问题将更接近“在发动机X的源代码中,eval
函数定义在哪里?”。还有“告诉我们一些我们还不知道的事情”?这不是你或那些已经知道的人的答案,而是那些不知道的人的答案。@Abdul,JS引擎确实像JVM或CLR。在JS的情况下,标准没有明确指定VM和库必须使用哪种语言编写,但它们通常都是作为本机代码编写的。例如,尝试类似于console.log(Date)
的内容,您很可能会看到function Date(){[native code]}
object@Igor-窗口对象本身不是Javascript的一部分。它是一个主机对象,因此您可以在Chrome或Firefox的实际实现中找到它的代码,而不是在JS引擎中。