Menu
Français

JavaScript : c'est quoi ? Le langage du web expliqué

JavaScript, c'est quoi au juste ? Où s'exécute-t-il, à quoi sert-il, et en quoi diffère-t-il de Java ou TypeScript — une intro claire pour débuter.

JavaScript, le langage du web

JavaScript, c'est le langage de programmation qui tourne à l'intérieur des navigateurs web. Quand une page réagit à un clic, valide un formulaire, anime un menu ou charge du contenu sans être rechargée — c'est du JavaScript. Tous les navigateurs, sur tous les appareils, embarquent un moteur JavaScript intégré, ce qui en fait le seul langage capable de s'exécuter nativement sur le web.

Et aujourd'hui, il ne se limite plus au navigateur. Node.js, Deno et Bun permettent d'utiliser JavaScript côté serveur, pour des outils en ligne de commande, des scripts de build ou des API. Le même langage fait tourner le frontend et le backend, ce qui explique en grande partie sa popularité.

Un petit aperçu de ce à quoi ressemble du JavaScript :

index.js
Output
Click Run to see the output here.

Trois lignes, trois idées : déclarer une variable, appeler une fonction native, afficher une chaîne avec interpolation. Ces trois choses, tu vas les retrouver sur chaque page de code JavaScript réel.

Où s'exécute le code JavaScript

JavaScript, à la base, ce n'est qu'une spécification de langage (appelée ECMAScript). Pour qu'il tourne vraiment, il faut un moteur — un programme qui lit ton code et l'exécute. Les deux que tu vas croiser :

  • Les navigateurs. Chrome et Edge utilisent V8. Firefox tourne avec SpiderMonkey. Safari, lui, utilise JavaScriptCore. Ouvre une page, appuie sur F12, colle du JavaScript dans l'onglet Console — ça s'exécute immédiatement.
  • Node.js. Sort V8 du navigateur et lui donne accès au système de fichiers, au réseau et à l'OS. C'est ce qui rend possible le JavaScript côté serveur.
// À exécuter dans la console d'un navigateur :
document.title = "New tab title";

// À exécuter avec Node.js :
// $ node script.js

Le JavaScript du navigateur peut manipuler la page (le DOM), mais pas votre système de fichiers. Le JavaScript côté Node.js, lui, peut lire des fichiers et ouvrir des sockets, mais n'a aucune page à manipuler. Même langage, super-pouvoirs différents.

À quoi sert JavaScript

La réponse courte : à peu près tout ce qui touche au web. La réponse longue, grosso modo dans l'ordre où vous allez croiser ces usages :

  • Pages web interactives. Validation de formulaires, menus déroulants, modales, recherche en direct, glisser-déposer.
  • Applications single-page (SPA). Gmail, Figma, Notion, Linear — des applications entières affichées et mises à jour par JavaScript, généralement via un framework comme React, Vue ou Svelte.
  • Serveurs backend. APIs REST, endpoints GraphQL et services temps réel construits avec Node.js, Express, Fastify ou NestJS.
  • Outils de build et de développement. Bundlers (Vite, esbuild, webpack), linters (ESLint), test runners (Vitest, Jest).
  • Applications multiplateformes. Applis desktop via Electron (VS Code, Slack, Discord) et applis mobiles via React Native.

Pas besoin de tout maîtriser dès le premier jour. Mais c'est bien de savoir que ça existe, pour que l'expression « juste du JavaScript » ne sonne pas comme une limite.

Comment fonctionne JavaScript concrètement

Un modèle mental très simplifié : vous écrivez du code source, le moteur JavaScript le parse en une représentation interne, puis l'exécute. Les moteurs modernes utilisent la compilation JIT (just-in-time) — ils commencent par interpréter rapidement, puis optimisent les portions de code les plus sollicitées en code machine pendant que le programme tourne.

On ne compile pas JavaScript en un binaire avant de le livrer. On donne le code source au navigateur (ou à Node) et le moteur s'occupe du reste :

index.js
Output
Click Run to see the output here.

Collez ça dans la console du navigateur ou enregistrez-le sous greet.js puis lancez node greet.js — le résultat est le même. Pas de compilation, pas de config de build, rien à installer pour un code aussi simple.

Différence entre Java et JavaScript

Les noms se ressemblent, mais les deux langages n'ont rien à voir. Si JavaScript s'appelle comme ça, c'est parce qu'en 1995 on a voulu surfer sur la popularité de Java — une décision marketing qui, depuis, embrouille tous les débutants.

JavaScriptJava
TypageDynamiqueStatique
S'exécute surNavigateurs, Node.jsJVM
ParadigmeMulti-paradigme, à base de prototypesPOO à base de classes
CompilationJIT, aucune étape de build nécessaireCompilation préalable en bytecode

Si quelqu'un vous dit « j'ai appris Java, donc je connais JavaScript » — c'est faux. Considérez-les comme deux langages distincts qui partagent simplement quatre lettres.

JavaScript vs TypeScript

TypeScript, c'est JavaScript avec un système de types greffé par-dessus. Vous écrivez votre code avec des annotations de types, le compilateur TypeScript les vérifie, et il produit en sortie du JavaScript classique qui tourne partout où JavaScript tourne.

// JavaScript — les types sont implicites :
function add(a, b) {
    return a + b;
}

// TypeScript — les types sont explicites :
function add(a: number, b: number): number {
    return a + b;
}

Tout fichier JavaScript valide est aussi un fichier TypeScript valide. Autrement dit, TypeScript n'est pas un concurrent de JavaScript : c'est un sur-ensemble. Aujourd'hui, la plupart des gros projets utilisent TypeScript, mais commencer par JavaScript reste la bonne approche. Impossible de comprendre ce que fait TypeScript sans d'abord savoir à quoi il ajoute des types.

Un peu d'histoire, pour comprendre les bizarreries

JavaScript a été pondu en dix jours en 1995 par Brendan Eich chez Netscape. Cette anecdote a son importance : certaines aspérités du langage (l'égalité faible, l'insertion automatique de points-virgules, le fameux typeof null === "object") viennent de décisions prises sous une pression de dingue, puis figées pour toujours afin de préserver la rétrocompatibilité du Web.

Le langage est standardisé sous le nom d'ECMAScript, avec une nouvelle version chaque année (ES2015 a marqué un tournant majeur avec let, const, les fonctions fléchées, les classes et les modules). Quand on parle de « ES6 » ou de « JavaScript moderne », on désigne grosso modo l'ensemble des fonctionnalités apparues à partir de 2015, aujourd'hui supportées partout.

Écrire du JavaScript moderne est devenu vraiment agréable. Les vieilles verrues sont toujours là, mais on peut les contourner avec quelques bonnes habitudes qu'on verra au fil du cours.

Ce qu'il faut retenir

  • JavaScript tourne dans tous les navigateurs et, grâce à Node.js, aussi côté serveur.
  • On s'en sert pour à peu près tout ce qui touche au Web : interfaces, backend, outillage, et même applications desktop et mobiles.
  • Ce n'est pas Java. TypeScript, lui, est un sur-ensemble qui ajoute du typage statique.
  • Le langage traîne quelques bizarreries historiques ; dans la pratique, c'est du JavaScript moderne (ES2015+) que tu écriras.

La suite : exécuter du JavaScript

Assez de contexte — passons au code. Le prochain chapitre présente les trois endroits où tu exécuteras du JavaScript en tant que débutant : la console du navigateur, un fichier HTML et Node.js en ligne de commande.

Questions fréquentes

C'est quoi JavaScript, en deux mots ?

JavaScript est un langage de programmation qui tourne dans les navigateurs web et côté serveur (via Node.js). C'est lui qui rend les pages interactives : réagir aux clics, mettre à jour l'affichage sans recharger la page, récupérer des données via une API. C'est aussi le seul langage exécuté nativement par tous les navigateurs.

À quoi sert JavaScript concrètement ?

À peu près à tout sur le web : petites interactions d'UI (menus déroulants, validation de formulaires), applis web complètes (Gmail, Figma, Notion), serveurs backend (Node.js, Deno), applis mobiles (React Native), applis desktop (VS Code via Electron) et outils de build. Dès que ça touche au web, il y a de grandes chances que JavaScript soit dans le coup.

JavaScript et Java, c'est pareil ?

Non, pas du tout. Ce sont deux langages sans lien réel, dont les noms se ressemblent pour des raisons marketing de l'époque. Java est typé statiquement, orienté classes, et tourne sur la JVM. JavaScript est typé dynamiquement, tourne dans les navigateurs et Node, et repose sur une philosophie très différente. Les quatre premières lettres, c'est à peu près tout ce qu'ils ont en commun.

Quelle différence entre JavaScript et TypeScript ?

TypeScript, c'est JavaScript avec un système de types en plus. Tu écris du code avec des annotations de types, un compilateur les vérifie, et en sortie tu obtiens du JavaScript classique. Tout fichier JavaScript valide est aussi un fichier TypeScript valide. TypeScript n'est pas nécessaire pour apprendre JavaScript, mais la plupart des gros projets l'utilisent aujourd'hui.

Apprendre à coder avec Coddy

COMMENCER