Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
哪里可以找到javascript本机函数源代码?_Javascript_Function_Native Code - Fatal编程技术网

哪里可以找到javascript本机函数源代码?

哪里可以找到javascript本机函数源代码?,javascript,function,native-code,Javascript,Function,Native Code,在哪里可以找到本机js函数的源代码,例如,我想在JavaScript引擎的源代码中查看eval()function。Chrome和Firefox都是开源的,您可以在这些产品的源代码中查看JavaScript引擎的任何部分的实现。其他浏览器有自己的实现(如IE),公众无法查看 Chrome v8 javascript引擎如下所示: Firefox SpiderMonkey引擎如下: 警告,如果您还不熟悉这些产品及其工具,可能需要一段时间才能熟悉到您要查找的内容。Javascript是一种脚本语言,

在哪里可以找到本机js函数的源代码,例如,我想在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引擎中。