有没有办法看到JavaScript默认方法的源代码?

时间:2015-05-11 18:54:45

标签: javascript specifications

有没有办法看到JavaScript默认方法的源代码?例如.sort()或.reverse()。我认为是C代码但我在哪里可以阅读它?

1 个答案:

答案 0 :(得分:2)

SpiderMonkey's JavaScript Array implementation的代码中(在Firefox中使用),您需要先查看array_sortarray_reverse函数。更一般地说,寻找array_methods常数;它有相关功能的索引。

V8's JavaScript Array implementation的代码中(在Chrome和Opera中使用),您希望分别查找ArraySortArrayReverse函数。查找GlobalArray.prototype以查找其他函数的索引。

JavaScript Core's JavaScript Array implementation(在Safari中使用)有点不寻常,因为Array.prototype.sort及其同类实际上是用JavaScript实现的。您想要的排序功能在此文件中名为sort。但是,并非所有Array.prototype函数系列都在该文件中找到;例如,我不确定reverse在哪里。

Chakra实现的源代码(在IE中使用)不可用,我怀疑它们可能永远不会出现。 Presto实现的源代码也是如此(之前在Opera中用于切换到Blink / V8之前)。