Подтвердить что ты не робот

На каком языке написан JavaScript?

Если это язык сценариев, как следует из названия, он должен быть написан на языке более низкого уровня? Как то, как PHP написан на языке C на каком языке написан JavaScript?

4b9b3361

Ответ 1

Javascript - это просто стандарт, более формально известный как ECMAScript. Он может быть реализован на любом языке, как и любой стандарт.

Chrome Javascript engine, V8, написан на С++.

На странице проекта:

V8 написан на С++ и используется в Google Chrome, браузере с открытым исходным кодом от Google.

V8 реализует ECMAScript, как указано в ECMA-262, 5th edition и работает на Windows (XP или новее), Mac OS X (10,5 или новее) и Linux систем, использующих процессоры IA-32, x64 или ARM.

Firefox Javascript engine, SpiderMonkey (и теперь TraceMonkey) также написан на С++. И как говорят нижеприведенные maerics, Rhino написан на Java.

Ответ 3

Большинство интерпретаторов Javascript написаны на C/С++ (V8, Nitro и т.д.), однако совместимый интерпретатор может быть написан на любом языке (Rhino → Java, Interpreter → Javascript и т.д.).

Ответ 4

Какой бы язык ни был интерпретирован javascript-интерпретатором веб-браузеров клиента:)

Ответ 5

Javascript - это реализация стандарта ECMAScript, но нет единственного канонического интерпретатора, который вы видите в PHP.

Большинство основных реализаций (автономных или как часть веб-браузеров), как правило, в основном написаны на C или C++ по соображениям производительности, но это не всегда так. Rhino, движок, поддерживаемый Mozilla, написан на Java.

Ответ 6

Большинство реализаций поведения Javascript, которые явно вызваны использованием указателей и передачи параметров byref, которые обычно указывают на использование C или С++

Это, безусловно, примечательно, например, когда вы разбираете многомерный массив в цикле с помощью промежуточного массива. Они, как правило, ведут себя очень "странно", если вы не знакомы с указателями и передачей параметров (вам нужно всегда делать var hlp = new Array() или перезаписывать предыдущие значения, которые вы уже храните где-то еще)

Мне довольно любопытно, как реализация javascript в, например, Java, потому что я предполагаю, что такое поведение будет в этом случае совсем другим?

Ответ 7

C++ является основным языком для всего современного и модного. Большинство современных языков высокого уровня являются подмножеством языка низкого уровня, C++. Все современные языки, которые вы видите сегодня, так или иначе являются подмножеством C++. Даже Java является подмножеством C++.