À propos de JavaScript
Un article de MDC.
[modifier] Présentation de JavaScript
JavaScript est le langage de script développé par Netscape utilisé dans des millions de pages Web et d'applications serveur dans le monde entier. Le JavaScript de Netscape est une extension du langage de script standard ECMA-262 Edition 3 (ECMAScript), ne différant que légèrement des standards publiés.
Contrairement à une conception populaire, JavaScript n'est pas « du Java interprété ». En quelques mots, JavaScript est un langage de script dynamique utilisant une construction d'objets basée sur des prototypes. La syntaxe de base est volontairement similaire à Java et à C++ pour réduire le nombre de concepts nouveaux à assimiler par un débutant. Les structures de contrôle, telles que les instructions if, les boucles for et while, les blocs switch et try..catch fonctionnent de la même manière que dans ces langages (ou presque.)
JavaScript peut être employé en tant que langage procédural ou orienté objet. Les objets sont créés par le programmae en JavaScript, en attachant lors de l'exécution des méthodes et des propriétés à des objets initialement vide, contrairement aux définitions de classe syntaxiques courantes dans les langages compilés comme C++ et Java. Une fois qu'un objet a été construit, il peut servir de modèle (ou prototype) pour créer des objets similaires.
Parmi les capacités dynamiques de JavaScript, on peut citer la construction d'objets à l'exécution, les listes de paramètres variables, les variables fonctions, la création des scripts dynamique (via eval), le parcours d'objets (via for ... in), et la récupération du code source (les programmes JavaScript peuvent décompiler les corps de fonction pour retrouver le code source).
Les objets intrinsèques sont Number, String, Boolean, Date, RegExp et Math.
Pour une description approfondie de la programation en JavaScript, consultez les liens de la section ressources JavaScript ci-dessous.
[modifier] Les implémentations de JavaScript disponibles
Mozilla héberge deux implémentations de JavaScript. La première au monde est celle créée par Brendan Eich chez Netscape, et depuis mise à jour (dans sa version 1.5) pour se conformer à l'ECMA-262 Edition 3. Ce moteur, portant le nom de code SpiderMonkey, est implémenté en C. Le moteur Rhino, créé principalement par Norris Boyd (également chez Netscape) est une implémentation de JavaScript en Java. Comme SpiderMonkey, Rhino suit la spécification ECMA-262 Edition 3.
Chacun des moteurs JavaScript de Mozilla expose une API publique que les applications peuvent appeler pour utiliser JavaScript. L'environnement hôte le plus courant pour JavaScript est, de loin, un navigateur Web. Les navigateurs utilisent typiquement l'API publique pour créer des « objets hôtes », reflétant le DOM en JavaScript.
Une autre utilisation courante de JavaScript est d'être un langage de script côté serveur (Web). Un serveur Web JavaScript exposerait, lui, des objets hôtes représentant les requêtes HTTP et leurs réponses, qui peuvent ensuite être manipulées par un programme JavaScript pour générer dynamiquement des pages Web.
Pour plus d'informations concernant l'intégration de JavaScript dans vos propres applications, consultez les liens SpiderMonkey ou Rhino ci-dessous, ou rendez-nous visite sur le newsgroup mozilla.dev.tech.js-engine.
[modifier] Ressources JavaScript
- Intégration de SpiderMonkey
- Informations concernant l'intégration du moteur JavaScript en C (SpiderMonkey).
- Intégration de Rhino
- Informations concernant l'intégration du moteur JavaScript en Java (Rhino).
- Ressources sur le langage
- Liens vers les standards JavaScript publiées, documents LiveConnect et travaux sur JavaScript 2.0 (à traduire de en:JavaScript Language Resources).
- Le projet Tamarin
- Informations sur la machine virtuelle open source à hautes performantes prévue pour JavaScript 2.0.
- Ressources sur le scripting
- Liens vers des ressources sur le scripting en JavaScript, dont des livres, des références en ligne, des tutoriels et des exemples de code.
- Page des projets
- Liste d'autres projets utilisant les moteurs JavaScript open-source.
- Page de la bibliothèque de test
- Informations concernant la suite de tests de JavaScript.
- mozilla.dev.tech.js-engine
- Le newsgroup pour discuter des moteurs JavaScript, les questions concernant le scripting dans les navigateurs sont traitées dans le groupe mozilla.dev.tech.javascript group.