Kapitel 2. Browsers

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

In JavaScript gibt es keine einzige, maßgeschneiderte Implementierung wie in den meisten anderen Programmiersprachen. Bei Python zum Beispiel wirst du wahrscheinlich das Python-Binary verwenden, das von den Sprachpflegern bereitgestellt wird. Für JavaScript hingegen gibt es viele verschiedene Implementierungen. Dazu gehört die JavaScript-Engine, die mit verschiedenen Webbrowsern ausgeliefert wird, z. B. V8 in Chrome, SpiderMonkey in Firefox und JavaScriptCore in Safari. Die V8 Engine wird auch von Node.js auf dem Server verwendet.

Diese verschiedenen Implementierungen beginnen jeweils mit der Implementierung einer Art Faksimile der ECMAScript-Spezifikation. Wie die Kompatibilitätstabellen zeigen, die wir so oft zu Rate ziehen müssen, implementiert nicht jede Engine JavaScript auf die gleiche Weise. Natürlich versuchen die Browserhersteller, JavaScript-Funktionen auf die gleiche Weise zu implementieren, aber es gibt immer wieder Fehler. Auf Sprachebene wurden einige Gleichzeitigkeits-Primitive zur Verfügung gestellt, die in den Kapiteln 4 und 5 näher erläutert werden.

Bei jeder Implementierung werden weitere APIs hinzugefügt, um das JavaScript, das ausgeführt werden kann, noch leistungsfähiger zu machen. Dieses Kapitel konzentriert sich ganz auf die Multithreading-APIs, die von modernen Webbrowsern zur Verfügung gestellt werden, ...

Get Multithreading-Javascript now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.