JavaScript-Engines – ein kleiner Überblick
Eine JavaScript-Engine ist ein Programm oder Interpreter, welches JavaScript-Code ausführen kann. Anwendung finden JavaScript-Engines meistens in Webbrowsern.
Einige der bekanntesten sind in der Tabelle aufgeführt:
Engine | Entwickler | Browser | Programmiersprache |
---|---|---|---|
V8 | Chrome, Opera | C++ | |
Rhino | Mozilla Foundation | Firefox | Java |
SpiderMonkey | Netscape | Netscape Navigator | C/C++ |
JavaScriptCore | Apple | Safari | C++ |
KJS | KDE Projekt | Konqueror | C++ |
Chakra | Microsoft | Internet Explorer | C++ |
V8
Die Chrome V8 oder einfach ausgedrückt V8, ist eine von Google entwickelte JavaScript-Engine. V8 kompiliert JavaScript direkt in nativen Maschinencode, bevor dieser ausgeführt wird. V8 ist für die Plattformen x86, ARM oder MIPS Architekturen ausgelegt (32- und 64-Bit).
Rhino
Rhino ist vollständig in Java geschrieben und wurde von der Mozilla Foundation entwickelt. Rhino kompiliert JavaScript in Java-Bytecode, kann diesen aber auch zur Laufzeit interpretieren.
SpiderMonkey
SpiderMonkey ist in C/C++ geschrieben und wurde von Netscape entwickelt. SpiderMonkey diente der Mozilla Foundation als Grundlage zur Entwicklung von Rhino.
JavaScriptCore
JavaScriptCore ist eine Abspaltung von KJS und wird von Apple weiterentwickelt. Vor der Ausführung wird JavaScript in Bytecode übersetzt, welches direkt zur Maschinensprache kompiliert.
KJS
KJS wurde ursprünglich von Harri Porten für den KDE Webbrowser Konqueror entwickelt.
Chakra
Chakra (JScript9) ist eine JavaScript-Engine, welche von Microsoft entwickelt wurde. ChakraCore (JavaScript) ist ein Teil von Chakra und ist eine JavaScript-Engine für den Microsoft Edge Browser. Chakra ist für die Plattformen x86/x64/ARM Architekturen ausgelegt.
Weiterführende Links
https://en.wikipedia.org/wiki/List_of_ECMAScript_engines
https://en.wikipedia.org/wiki/Chakra_(JScript_engine)
https://github.com/Microsoft/ChakraCore
https://developers.google.com/v8/
https://developer.apple.com/documentation/javascriptcore
https://en.wikipedia.org/wiki/Comparison_of_web_browser_engines
https://de.wikipedia.org/wiki/Rhino_(Programmierung)
https://developer.mozilla.org/de/docs/Rhino
https://github.com/alrra/browser-logos