À propos de cette référence
Une expérience préalable en programmation (langage C ou Visual Basic ...) est utile mais pas indispensable.
Le langage JavaScript est conçu pour être utilisé au sein d'un environnement plus large, que ce soit un navigateur, sur un serveur ou autres. La plupart du temps, cette référence sera la plus neutre possible quant à l'environnement utilisé et ne se limitera pas à un seul navigateur web. À des fins d'exemples, cette référence utilisera la fonction println. Cette fonction ne fait pas partie de JavaScript et peut être réalisée en utilisant différentes méthodes, spécifiques à différents environnements. Ainsi, au sein d'un navigateur web, on pourra définir println de cette façon :
Coder la fonction équivalente sur un autre environnement est un exercice qui sera laissé à la discrétion du lecteur.
Conventions d'écriture
Cette référence inclut des sections qui décrivent une utilisation pertinente ou fréquente du sujet discuté. Au sein de ces sections, tous les fragments de texte à reproduire tels quels ne seront pas en italique (à l'exception des ellipses). Les mots en italiques représenteront les noms ou déclarations définis par l'utilisateur. Les fragments compris entre crochets ([ et ]) sont facultatifs. Un suite dont les éléments sont séparés par des virgules et qui comprend une ellipse (...) indique que la suite est une liste dont tous les éléments, sauf le premier, sont facultatifs (par exemple, ici seul param1 est obligatoire dans « param1, param2, ..., paramN »).
Histoire de JavaScript
Les versions récentes des navigateurs de Mozilla supportent les nouvelles versions de JavaScript. La tableau ci-après liste les versions de JavaScript supportées par les différents navigateurs de Mozilla en fonction de leurs versions.
Les navigateurs ne supportant pas JavaScript 1.5 sont très rares à l'heure actuelle. En effet, JavaScript 1.5 a été introduit en 1999. Si vous êtes intéressés par des informations historiques à ce propos, veuillez vous référer à l'article de Wikipédia sur ECMAScript.
Historique du support JavaScript/Navigateur
| Version de JavaScript (SpiderMonkey) | Version de Mozilla | Version de Gecko |
|---|---|---|
| JavaScript 1.5 | Navigator 6.0, Mozilla Application Suite, Firefox 1.0 | Gecko 0.6x-1.7 |
| JavaScript 1.6 | Firefox 1.5 | Gecko 1.8 |
| JavaScript 1.7 | Firefox 2 | Gecko 1.8.1 |
| JavaScript 1.8 | Firefox 3 | Gecko 1.9 |
| JavaScript 1.8.5 | Firefox 4 | Gecko 2.0 |
| JavaScript 1.8.6 | Firefox 17 | Gecko 17 |
Où trouver des informations concernant JavaScript
La documentation JavaScript concernant les fonctionnalités majeures (dont la plus grande partie est purement du ECMAScript) du langage se trouve dans :
Si vous débutez avec JavaScript, il est conseillé de commencer avec le guide. Une fois que vous avez acquis quelques réflexes et fondamentaux, vous pouvez utiliser la référence pour obtenir plus de détails sur les objets et la structure du langage.
Objets globaux
Propriétés valeurs
Les valeurs globales retourne une valeur simple.
Propriétés fonctions
Les fonctions globales retourne le résultat d'un travail particulier.
eval()uneval()isFinite()isNaN()parseFloat()parseInt()decodeURI()decodeURIComponent()encodeURI()encodeURIComponent()escape()unescape()
Objets fondamentaux
Objets génériques du language, fonctions, et erreurs.
ObjectFunctionBooleanSymbolErrorEvalErrorInternalErrorRangeErrorReferenceErrorStopIterationSyntaxErrorTypeErrorURIError
Nombres et dates
Objets prenant en charge les nombres, dates et calculs mathématiques.
Manipulation de textes
Objets pour manipuler des textes.
Collections indexées
Collections ordonnées par un index. Objets de type Tableaux.
ArrayFloat32ArrayFloat64ArrayInt16ArrayInt32ArrayInt8ArrayUint16ArrayUint32ArrayUint8ArrayUint8ClampedArrayParallelArray
Collections avec clefs
Collections d'objets avec clefs. Éléments itérables dans un ordre d'insertion.
Données structurées
Data buffers et JavaScript Object Notation
ArrayBufferDataViewJSON
Objets de contrôle d'abstraction
Réflection
Internationalisation
Ajouts au cœur de ECMAScript pour des traitements dépendants de particularités linguistiques.
Fonctions et portée dans les fonctions
Instructions
La page principale de la référence inclus des parties de cette page pour se synchroniser automatiquement. Certains titres ou mots-clefs ci-dessous sont nécessaires à cette synchronisation. Merci de ne pas effectuer de changements sur cette page sans en appliquer les conséquences sur la page principale.Les instructions JavaScript sont des groupes de mots-clés particuliers utilisés avec une certaine syntaxe. Une seule instruction peut s'étendre sur plusieurs et à l'inverse, plusieurs instructions peuvent apparaître sur une seule ligne si elles sont séparées par des points-virgules.
- block
- Une instruction de block regroupe zéro ou plusieurs arguments. Le block est délimité par une paire d'accolades.
break- Termine la boucle, l'instruction
switch, l'instructionlabelen cours et continue l'exécution sur l'instruction suivant l'instruction terminée. const- Cette instruction déclare une constante nommée. Cette constante ne peut être modifiée.
continue- Cette instruction termine l'exécution des instructions dans la boucle courante, ou la boucle avec une étiquette correspondante, et continue l'exécution de la boucle dans l'itération suivante.
debugger- Cette instruction appelle une fonctionnalité de débogage. Si aucune fonctionnalité de débogage n'est disponible, l'instruction n'a aucun effet.
do...while- Cette instruction crée une boucle qui s'exécute tant que la condition est vraie. La condition est évaluée après avoir exécuté une itération de boucle, ce qui fait que cette boucle sera exécutée au moins une fois.
export- Cette instruction permet à un script signé de fournir des propriétés, fonctions et des objets à d'autres scripts (signés ou non). Cette fonctionnalité ne fait pas partie de ECMA-262, Edition 3.
for- Cette instruction crée une boucle qui se base sur trois expressions facultatives. Ces expressions sont entre parenthèses, séparées par des points virgules et suivies par l'instruction à exécuter dans la boucle.
for each...in- Cette instruction itère une variable donnée sur toutes les propriétés d'un objet. Pour chaque propriété distincte, une instruction spécifique est exécutée.
for...in- Cette instruction effectue, dans un ordre arbitraire, une boucle sur les propriétés énumérables d'un objet. Pour chacune des différentes propriétés, des instructions peuvent être exécutées.
function- Cette instruction déclare une fonction avec les paramètres donnés.
if...else- Cette instruction exécute une instruction donnée si une condition donnée est vérifiée. Si la condition n'est pas vérifiée une autre instruction pourra être exécutée.
import- Cette instruction permet à un script d'importer des propriétés, fonctions ou objets depuis un script qui les exporte. Cette fonctionnalité ne fait pas partie de l'Édition 3 de ECMA 262.
- label
- Cette instruction fournit un identifiant auquel il est possible de se référer en utilisant une instruction
breakoucontinue. let- Cette instruction permet de déclarer une variable locale dans une portée d'un bloc et éventuellement d'initialiser sa variable.
switch- Cette instruction permet d'évaluer une expression et de faire correspondre le résultat de cette expression avec différents cas et d'exécuter les instructions associées aux cas qui ont chacun un identifiant.
throw- Lève une exception.
try...catch- Cette instruction permet de spécifier un ensemble d'instructions à tenter, et de préciser le traitement à effectuer dans le cas où une exception est produite.
var- Cette instruction permet de déclarer une variable, éventuellement en fournissant une valeur pour permettant de l'initialiser.
while- Cette instruction permet de créer une boucle qui s'exécute tant qu'une condition de test est vérifiée. La condition est évaluée avant d'exécuter l'instruction contenue dans la boucle.
with- Cette instruction permet d'étendre la portée chaînée d'une instruction.
Opérateurs et autres mots-clés
- Opérateurs arithmétiques
-
Les opérateurs arithmétiques prennent des valeurs numériques (des valeurs littérales ou des variables) en opérandes et renvoient une seule valeur numérique. Les opérateurs arithmétiques standards sont ceux de l'addition (
+), la soustraction (-), la multiplication (*) et la division (/).
- Opérateurs d'affectation
- Un opérateur d'affectation assigne une valeur à son opérande de gauche sur base de la valeur de son opérande de droite.
- Opérateurs binaires
- Les opérateurs binaires traitent leurs opérandes comme des ensembles de 32 bits (zéros et uns), plutôt que comme des nombres décimaux, hexadécimaux ou octaux. Par exemple, le nombre décimal neuf a une représentation binaire de 1001. Les opérateurs binaires effectuent des opérations sur de telles représentations binaires, mais renvoient des valeurs numériques standards JavaScript.
- Opérateurs de comparaison
- Un opérateur de comparaison compare ses opérandes et renvoie une valeur logique basée sur le résultat de la comparaison. Les opérandes peuvent être numériques ou des valeurs chaînes. Les chaînes sont comparées selon l'ordre lexicographique standard, à l'aide de leurs valeurs Unicode. Une valeur booléenne est renvoyée comme résultat de la comparaison.
- Opérateurs logiques
-
Les opérateurs logiques sont typiquement utilisés avec des valeurs booléennes (logiques), et dans ce cas renvoient également une valeur booléenne. Les opérateurs ET (
&&) et OU (||) renvoient en fait la valeur d'une des opérandes spécifiées, donc s'ils sont utilisés avec des valeurs non booléennes, ils peuvent renvoyer une valeur non booléenne.
- Opérateurs de chaînes
-
Outre les opérateurs de comparaison, qui peuvent être utilisés sur des chaînes, l'opérateur de concaténation (
+) peut servir à fusionner deux chaînes de caractères ensemble, en revoyant une autre chaîne qui est l'union des deux chaînes opérandes. Par exemple,"ma " + "chaîne"renvoie"ma chaîne".
- Opérateurs de membres
- Les opérateurs de membres permettent d'accéder à une propriété ou méthode d'un objet.
- Opérateurs spéciaux
- Plusieurs opérateurs spéciaux n'entrent dans aucune des autres catégories :
- L'opérateur conditionnel
- L'opérateur virgule
-
L'opérateur
delete -
L'opérateur
function -
L'opérateur
in -
L'opérateur
instanceof -
L'opérateur
new -
L'opérateur
this -
L'opérateur
typeof -
L'opérateur
void
- Priorités des opérateurs
- Les priorités des opérateurs définissent l'ordre dans lequel les opérateurs sont évalués.
Commentaires
- Commentaires de code (
//et/* */)
E4X (extension)
Instructions globales :
Annexe A – Mots réservés
Annexe B – Fonctionnalités dépréciées
Original Document At: http://devedge-temp.mozilla.org/libr...1.5/reference/