Language

JavaScript

The language of the browser: an event loop, prototypes, and now native ESM modules.

JavaScript is single-threaded with an event loop. That is why UI stays responsive and why shared mutable state is dangerous. ES modules and import maps let a Symfony front skip a bundler when the page is not an SPA.

Particularity: the same syntax now runs in the browser and on Node. Types are optional (TypeScript) — seniors add them where the surface is large, not everywhere by dogma.

It is a poor systems language. It is the right one for behaviour in the page: menus, forms, progressive enhancement.

MDN JavaScript

Ecosystem