« JavaScript/Syntaxe du langage » : différence entre les versions

Contenu supprimé Contenu ajouté
Ligne 11 :
Les commentaires sont les même que ceux du PHP, à savoir :
 
<sourcesyntaxhighlight lang="javascript">
// Deux slashes pour un commentaire sur une ligne
 
Ligne 18 :
plusieurs lignes...
*/
</syntaxhighlight>
</source>
 
Les commentaires ne sont pas pris en compte. Ils ne servent que de repères et d'aide pour le codeur du script.
Ligne 26 :
C'est le seul point assez complexe du langage capricieux qu'est JavaScript. En effet, le JavaScript se base sur des objets de la page où il est présent. En fait, il s'agit d'une hiérarchie telle celle du langage ActionScript (Flash). Pour être très "propre" et pour faire référence à un objet de la page, on fera de la sorte :
 
<sourcesyntaxhighlight lang="text">
window.document.form.champ.xxxxx
</syntaxhighlight>
</source>
 
<u>Explications</u> :
Ligne 45 :
Voyons l'exemple du chapitre précédent :
 
<sourcesyntaxhighlight lang="javascript">
// On avait ça :
document.write("Bonjour tout le monde !");
// Cela équivaut à cela :
window.document.write("Bonjour tout le monde !");
</syntaxhighlight>
</source>
 
Ici, on peut constater que write n'est en fait qu'une méthode (fonction) de l’ensemble document. Cela peut faire penser à la ''POO'' ([[w:Programmation orientée objet|Programmation orientée objet]]) mais cela ne va pas jusque là.
Ligne 56 :
Mais ceci est une '''erreur''' :
 
<sourcesyntaxhighlight lang="javascript">
write("Bonjour tout le monde !");
</syntaxhighlight>
</source>
 
Car on ne précise pas à quel ensemble appartient la méthode write. Cela n'affiche rien ou un message d'erreur.
Ligne 67 :
Les variables en JavaScript n'ont pas nécessairement besoin d’être déclarées; mais il est plus correct de le faire :
 
<sourcesyntaxhighlight lang="javascript">
// Déclaration de la variable nombre
var nombre;
</syntaxhighlight>
</source>
 
La déclaration de variable se fait avec l'instruction var (variables en anglais (et en français)).
Ligne 76 :
On peut immédiatement déclarer une valeur par défaut (mais cela n'est nullement obligatoire) :
 
<sourcesyntaxhighlight lang="javascript">
var entier = 5;
var float = 1.999992;
Ligne 82 :
var boolean = true; // ou false
var object = null;
</syntaxhighlight>
</source>
 
== Opérateurs ==
Ligne 90 :
Comme vu dans les exemples précédents, le symbole "=" (égal) permet d'affecter une valeur (nombre ou chaîne de caractères) à une variable.
 
<sourcesyntaxhighlight lang="javascript">
var nombre = 18;
var chaine = "Bonjour tout le monde !";
Ligne 101 :
// Et...
a = b = 0; // a et b valent toutes les deux 0
</syntaxhighlight>
</source>
 
=== Opérateurs binaires de calcul ===
Ligne 109 :
* La division se sert du symbole "/" (slash)
 
<sourcesyntaxhighlight lang="javascript">
var a = b = c = 2; // On initialise a, b et c
var d = a/(b+c)-a*4; // d = 2/(2+2)-2*4 = 1/2-8 = -7.5
var e = 3*(3+3); // e = 3*6 = 18
</syntaxhighlight>
</source>
 
Il existe aussi les opérateurs +=, -=, *= et /= qui s'utilisent lorsque l'opération s'effectue sur une seule variable. Voici un exemple très simple :
 
<sourcesyntaxhighlight lang="javascript">
var a = 3;
var b = a-2;
Ligne 125 :
b *= a; // b = b*a = 1*3 = 3
b /= b; // b = b/b = 1
</syntaxhighlight>
</source>
 
=== Opérateurs de comparaisons ===
Les opérateurs de comparaison permettent de comparer deux valeurs et renvoient une valeur de type booléen (true, vrai ou false, faux) selon les cas. La syntaxe est simple à comprendre :
 
<sourcesyntaxhighlight lang="text">
Valeur1 Opérateur de comparaison Valeur2
</syntaxhighlight>
</source>
 
* > : est strictement supérieur
Ligne 141 :
* != : est strictement différent
 
<sourcesyntaxhighlight lang="javascript">
var a = b = 10;
 
Ligne 150 :
document.write(b==a); // true
document.write(b<=a); // true
</syntaxhighlight>
</source>
 
Bien entendu il ne faut pas confondre l'opérateur "=" d'affectation et l'opérateur "==" de comparaison.
Ligne 159 :
Exemple :
 
<sourcesyntaxhighlight lang="javascript">
var a = 3;
var b = 5;
Ligne 165 :
document.write(a<b); // affiche true car 3<5
document.write(!(a<b)); // affiche false car l’expression équivaut à a>=b
</syntaxhighlight>
</source>
 
=== Concaténation ===
Ligne 172 :
Voici comme vous faisiez avant pour afficher deux chaînes à la suite :
 
<sourcesyntaxhighlight lang="javascript">
var chaine_a = "Bonjour";
var chaine_b = "tout le monde";
Ligne 179 :
document.write(chaine_a);
document.write(chaine_b);
</syntaxhighlight>
</source>
 
Et bien désormais, vous pouvez faire ainsi :
 
<sourcesyntaxhighlight lang="javascript">
var chaine_a = "Bonjour";
var chaine_b = "tout le monde";
Ligne 189 :
// On affiche les deux chaînes à la suite avec la concatenation
document.write(chaine_a+chaine_b);
</syntaxhighlight>
</source>
 
On décline un peu...
 
<sourcesyntaxhighlight lang="javascript">
var chaine_a = "Bonjour";
var chaine_b = "tout le monde";
 
chaine_a += chaine_b; // chaine_a vaut Bonjourtout le monde
</syntaxhighlight>
</source>
 
Notez bien qu’il existe une ambiguïté entre l'opérateur de concaténation et le signe de l'addition en JavaScript. Cependant, l'interpréteur reconnaît s'il s'agit d'une chaîne (donc concaténation) ou bien d'un nombre (addition).
Ligne 207 :
* -- : décrémente de 1
 
<sourcesyntaxhighlight lang="javascript">
var a = 0;
a++; // a = a+1 = 0+1 = 1
a--; // a = a-1 = 1-1 = 0
a--; // a = -1
</syntaxhighlight>
</source>
 
Notez que si vous placez ces opérateurs devant la variable à incrémenter, l'action sera faite immédiatement ; voici un exemple simple :
 
<sourcesyntaxhighlight lang="javascript">
var a = 0;
document.write(a++); // Affiche 0
document.write(++a); // Affiche 2
document.write(--a); // Affiche 1
</syntaxhighlight>
</source>
 
{{Bas de page