Представьте, что я хочу проверить, как Object.keys()
реализован в V8. Или String.prototype.indexOf()
. Или любой другой метод JS.Есть ли удобный способ поиска и просмотра исходного кода реализации для конкретного метода JavaScript?
Есть ли удобный онлайн-ресурс для просмотра части исходного кода, который реализует определенную функцию без необходимости «grep» через всю базу кода двигателя?
Желаю, чтобы эта функция была включена в документы MDN!
Это не то, что ясно, array.pop, например, имеет несколько реализаций, [один в JavaScript] (https://github.com/v8/v8-git-mirror/blob/master/src/array. js # L423-L441), [один в C++] (https://github.com/v8/v8-git-mirror/blob/master/src/builtins.cc#L407-L438) и [один в водороде] (https://github.com/v8/v8-git-mirror/blob/master/src/hydrogen.cc#L8315-L8372) (язык IR высокого уровня). И если вы даже можете понять реализации, которые, вероятно, знаете, достаточно хорошо, чтобы любой онлайн-ресурс сохранял пустую трату времени. – Esailija
Hi Esailija, если вы снова прочитаете мой оригинальный вопрос, вы увидите, что я говорю об определенном языке (JavaScript) и конкретную реализацию (v8 или другие). Imho Жаль, что до сих пор нет онлайн-ресурса, который удобно позволяет быстро просмотреть детали реализации конкретного метода, изолированного от остальных. – Pensierinmusica
Прочтите мой комментарий еще раз - я действительно занимался только V8 ... дело в том, что у вас есть идея, что метод просто реализуется где-то как отдельная автономная функция, и это все, но это неправильно – Esailija