JavaScript

Image manquante
Langage_progr.png
image:Langage_progr.png

Cet article fait partie de la série
Langages de programmation
Langages à objets
Ada 95 - C++ - C#
Common Lisp
Delphi - Eiffel - Java
Nice - Oz - Python
Simula - Smalltalk
Visual Basic
Langages impératifs
APL - ASP - Assembleur
BASIC - C - COBOL
Forth - FORTRAN - Logo
Pascal - Perl - PHP
Langages fonctionnels
Erlang - Haskell
ML/OCaml - Oz
Lisp/Common Lisp
Scheme
Langages déclaratifs
Clips - Oz - Prolog
Langages concurrents
Ada 95 - Erlang
Java - Oz
Langages balisés
HTML - SGML - XML
Dialectes XML
S-expressions
Voir aussi
Conception - Codage
Tests - Optimisations

JavaScript est un langage de programmation non compilé, orienté objet, principalement utilisé dans les pages Web.

JavaScript a été créé en 1995 par Brendan Eich pour Netscape Communications Corporation. Il est apparu pour la première fois dans les versions bétas de Netscape Navigator 2.0. D'abord appelé LiveScript, il a été rebaptisé JavaScript et décrit comme un complément à Java dans un communiqué de presse commun de Netscape et Sun Microsystems daté du 4 décembre 1995. Cette initiative a contribué à créer auprès du public une certaine confusion entre les deux langages, proches syntaxiquement mais pas du tout dans leur concepts fondamentaux, qui perdure encore aujourd'hui.

Le propos de JavaScript est de manipuler de façon simple des objets, au sens informatique, fournis par une application hôte.

JavaScript est aujourd'hui défini par la norme ECMA-262, aussi connue sous l'appellation ECMAScript. La troisième édition d'ECMA-262 parue en 1999 correspond à la version 1.5 de JavaScript. Son implémentation par Microsoft porte quant à elle le nom de JScript.

Sommaire

Utilisation

Dans une page Web

Du code JavaScript peut être intégré directement au sein des pages Web et s'exécuter sur le poste client. C'est alors le navigateur Web qui prend en charge l'exécution de ces petits bouts de programmes appelés scripts.

Généralement, JavaScript sert à contrôler les données saisies dans des formulaires HTML, ou à interagir avec le document HTML via l'interface DOM fourni par le navigateur (on parle alors parfois de HTML dynamique). Il est aussi utilisé pour réaliser des services dynamiques, parfois futiles ou strictement cosmétiques.

Netscape et Microsoft (avec JScript dans Internet Explorer) ont développé leur propre variante de ce langage qui, chacune, supporte presque intégralement la norme ECMAScript mais posséde des fonctionnalités supplémentaires et incompatibles, rarement utilisées dans le cadre de la programmation de pages Web. Pourtant les scripts JavaScript sont souvent la source de difficultés. Le plus souvent, elles sont dues non à des problèmes de portabilité du langage, les différentes implémentations respectant assez bien la norme ECMAScript, mais aux différences entre les modèles d'objet (DOM) fournis par les navigateurs.

Face à ce problème on utilise souvent une construction du type :

 if (monObjet.methode) { ....
                             monObjet.methode();
                        }
 

On vérifie ainsi que monObjet a bien une implémentation de methode que l'on peut alors utiliser.

Autres utilisations

JavaScript peut également être utilisé comme langage de programmation sur un serveur HTTP. Initialement, il était proposé sur les serveurs de Netscape, par la suite distribués par Sun Microsystems sous les noms iPlanet et Sun ONE, mais JScript peut aussi être utilisé sur les serveurs IIS de Microsoft. JScript peut d'ailleurs servir pour scripter une plateforme Microsoft Windows via WSH.

On peut encore citer ActionScript, utilisé dans Macromedia Flash qui est aussi une implémentation d'ECMAScript. Il permet de manipuler tous les éléments de l'animation, considérés comme des objets.

JavaScript est enfin utilisé dans la plateforme de développement Mozilla, sur laquelle sont basés plusieurs logiciels comme des navigateurs Web, pour des tâches relatives à l'interface utilisateur et de communication interne (Exemple : les extensions de Firefox et Thunderbird sont installées à base de fichiers Xpi utilisant le javascript).

Liens externes

Spécification ECMA-262

Références JavaScript et JScript

Tutoriels

See also: JavaScript, 1995, 1999, 4 décembre, APL (langage), ActionScript, Active server pages, Ada (langage), Anglais