有没有办法看到JavaScript默认方法的源代码?例如.sort()或.reverse()。我认为是C代码但我在哪里可以阅读它?
答案 0 :(得分:2)
在SpiderMonkey's JavaScript Array implementation的代码中(在Firefox中使用),您需要先查看array_sort
和array_reverse
函数。更一般地说,寻找array_methods
常数;它有相关功能的索引。
在V8's JavaScript Array implementation的代码中(在Chrome和Opera中使用),您希望分别查找ArraySort
和ArrayReverse
函数。查找GlobalArray.prototype
以查找其他函数的索引。
JavaScript Core's JavaScript Array implementation(在Safari中使用)有点不寻常,因为Array.prototype.sort
及其同类实际上是用JavaScript实现的。您想要的排序功能在此文件中名为sort
。但是,并非所有Array.prototype
函数系列都在该文件中找到;例如,我不确定reverse
在哪里。
Chakra实现的源代码(在IE中使用)不可用,我怀疑它们可能永远不会出现。 Presto实现的源代码也是如此(之前在Opera中用于切换到Blink / V8之前)。