JavaScript Engine

JavasScript Engine ou le "moteur JavaScript" est un programme logiciel qui interprète et exécute du code en langage JavaScript. Les moteurs JavaScript sont généralement intégrés aux navigateurs Web mais ils peuvent également s'exécuter dans des environnement serveur comme Node.

Le premier moteur JavaScript, SpiderMonkey, a été créé par l'informaticien américain Brendan Eich pour le navigateur Netscape Navigator. Il était programmé en langage C.

Les premiers moteurs JavaScript étaient de simples interpréteurs. Puis, les versions ont évolué et ont intégré la compilation afin d'améliorer les performances d'exécution du code JavaScript. 

V8 est le moteur JavaScript open source le plus utilisé et le plus connu. Il est développé par Google, utilisé sur Google Chrome, Chromium et Node.js.

Cf https://fr.wikipedia.org/wiki/Moteur_JavaScript

JavaScript Runtime

JavaScript Runtime est l'environnement qui fournit tous les composants nécessaires pour utiliser et exécuter des programmes js.

Prenons l'exemple du navigateur Chrome. Le schéma suivant indique que Chrome contient non-seulement un moteur de JavaScript (V8 en l'occurence) mais aussi :

  • des web APIs comme le DOM, le  Storage, les Timers
  • des queues (de task ou de microtasks, ces dernières ayant la priorité)
  • des boucles d'événements

js runtime