Québec, Canada

403-1381 1re Avenue

+1 581.849.27.96

bdgouthiere@gmail.com

JavaScript : le langage que personne n'a prévu et que tout le monde utilise

Ou : Comment un langage créé en 10 jours est devenu le socle technique d’Internet


En mai 1995, Brendan Eich a créé un langage de programmation en 10 jours chez Netscape. Le cahier des charges : « quelque chose qui ressemble à Java mais pour les scripts dans le navigateur ». Le nom « JavaScript » était un coup marketing — aucun rapport avec Java. Le langage avait des bizarreries (typeof null === "object"), des incohérences (0.1 + 0.2 !== 0.3), et une coercition de types que ses propres créateurs qualifient de « surprenante ».

Trente ans plus tard, c’est le langage de programmation le plus utilisé au monde. Pas parce qu’il est le meilleur. Parce qu’il est le seul qui tourne nativement dans tous les navigateurs. Ce monopole de fait l’a rendu incontournable côté frontend, puis Node.js l’a exporté côté backend, et aujourd’hui il est partout — applications mobiles (React Native), desktop (Electron), et même machine learning (TensorFlow.js).

Du navigateur au serveur — un langage sans frontières

Ce que JavaScript fait dans le navigateur

JavaScript est le troisième pilier du web, avec HTML (structure) et CSS (apparence). Il ajoute le comportement — tout ce qui est interactif, dynamique, réactif : réagir aux clics, valider des formulaires, charger des données sans recharger la page, animer des éléments, manipuler le DOM en temps réel.

Node.js : JavaScript sort du navigateur

En 2009, Ryan Dahl a créé Node.js — un runtime qui exécute JavaScript côté serveur. npm (son gestionnaire de paquets) est devenu le plus grand registre de packages au monde — plus de 2 millions de paquets. Le même développeur pouvait enfin écrire le frontend et le backend dans le même langage.

L’écosystème moderne

DomaineOutils/Frameworks
FrontendReact, Vue.js, Angular, Svelte
BackendNode.js, Express, Fastify, Nest.js
MobileReact Native, Expo
DesktopElectron (VS Code, Discord, Slack)
BuildVite, webpack, esbuild
TestJest, Vitest, Playwright

Le dialogue du undefined

DevOps Dave : J’ai un bug. La fonction retourne undefined.

Security Sarah : Tu as oublié le return ?

DevOps Dave : Non, la fonction a bien un return.

Security Sarah : C’est une fonction async et tu n’as pas mis await devant l’appel ?

DevOps Dave : … Ah.

Security Sarah : JavaScript a plus de façons de retourner undefined que la plupart des langages ont de types. C’est le prix de la flexibilité.

Tableau récapitulatif

ConceptEn une phrase
JavaScriptSeul langage de programmation natif du navigateur, étendu au serveur avec Node.js.
Node.jsRuntime qui exécute JavaScript côté serveur.
npmGestionnaire de paquets — le plus grand registre de packages au monde.
ES6+Versions modernes de JavaScript (const, let, arrow functions, async/await).
DOML’arbre HTML que JavaScript manipule pour rendre la page interactive.

Le mot de la fin

JavaScript est la preuve qu’en technologie, « être là au bon moment » bat « être le meilleur ». Il n’est pas le langage le mieux conçu, le plus performant, ou le plus élégant. Mais il était là quand le web avait besoin d’un langage, et il n’a jamais lâché. Ses bizarreries sont devenues des features. Ses limitations ont engendré TypeScript. Et son omniprésence est devenue sa qualité principale.