JavaScript est un langage de programmation de type script principalement employé dans les pages web modernes apportant l’interaction et la gestion de traitements complexes sur le poste utilisateur. Javascript est à la base de la majorité des applications web.
Le langage Javascript est orienté objet, basé sur des prototypes qui regroupent des interfaces. Les fonctionnalités standards sont ainsi fournies au travers d’interfaces sur des objets. Cependant, à la différence d’un langage orienté objets habituel, les objets ne sont pas des classes.
En effet, chaque objet possède son propre modèle d’interfaces et de constructeurs au sein des prototypes. Cela lui permet d’instancier des objets enfants avec les mêmes caractéristiques. Mais la souplesse des prototypes permet aussi de construire des objets personnalisés.
Avec les avancées apportées par HTML et CSS, JavaScript est parfois considéré comme l’une des innovations majeure du World Wide Web. La majorité des sites web l’utilisent, et quasiment tous les navigateurs web disposent d’un moteur JavaScript dédié pour l’interpréter, le précompiler et l’optimiser.
Cependant, comme toute nouvelle technologie, des problèmes de sécurité sont vites apparus. Des limites dans les cas d’utilisation ont alors permis de circonscrire les considérations de sécurité.
Petit à petit, devant sont énorme succès et avec les efforts de standardisation, Javascript est sorti du pur périmètre des navigateurs. Il est aussi devenu un langage à part entière et plus général. En particulier, plusieurs moteurs d’exécution dont ceux issus des principaux navigateur, se sont émancipé des frontaux web pour conquérir le monde des serveurs d’entreprise: ainsi, NodeJs est né et a su trouver sa place sur le banc des moteurs applicatifs. NodeJs a connu un bel essor, grâce à la disponibilité d’un gestionnaire de paquets dédié à Javascript: npm.
Javascript n’a pas que des avantages, c’est pourquoi des langages compilables en Javascript sont nés pour faciliter le développement pour les moteurs Javascript. On peut parler de Typescript de Microsoft qui sert de socle au moteur Deno qui se présente comme un successeur de NodeJs.
En outre, grâce à son apparente simplicité et à ses capacités d’adaptation, Javascript a su s’imposer dans le monde des langages de scripts intégrés au sein des applications. Il remplace alors des langages plus anciens tels que le basic ou des langages propriétaires.
JavaScript est né en 1995 des mains de Brendan Eich. Il a été standardisé en 1997 sous le nom d’ECMAScript par Ecma International. La version la plus récente de ce standard est celle de juin 2020, soit la 11ème édition.
Le langage JavaScript que nous connaissons est en fait une implémentation d’ECMAScript mise en œuvre par la fondation Mozilla. D’autres implémentations d’ECMAScript existent mais les différences tendent à diminuer. On peut noter celle de Microsoft, JScript, et celle d’Adobe Systems, ActionScript. Google a aussi adopté Javascript dans ses applications en ligne sous le nom AppScript.