Académique Documents
Professionnel Documents
Culture Documents
1. La syntaxe de JavaScript
2. Les variables
3. Les types de données
4. Les opérateurs
Le langage JavaScript
La syntaxe de JavaScript
• La syntaxe JavaScript est l'ensemble de règles qui régissent un programme
JavaScript.
• Un programme JavaScript est une liste d'instructions à exécuter par un
navigateur web. Ces instructions sont séparées par un point-virgule (;).
Exemple:
var x, y, z;
x = 5;
y = 6;
z = x + y;
4
Le langage JavaScript
La syntaxe de JavaScript
Les valeurs
• Une valeur est soit fixe soit variable.
• Une valeur fixe est appelée littérale.
Exemple: 10.5 1001 (nombre)
"Ugb", 'ndar' (Chaines de caractères)
(Un nombre à virgule est séparé par un point (.) et non par une virgule (,))
• Une valeur variable est appelée variable.
Les variables
• Les variables sont utilisées pour stocker des valeurs de données.
• JavaScript utilise le mot-clé var pour déclarer les variables.
• Un signe égal est utilisé pour attribuer des valeurs aux variables.
Exemple :
•
var x;
5
x = 6;
Le langage JavaScript
La syntaxe de JavaScript
Les opérateurs
• JavaScript utilise les opérateurs arithmétiques (+ - * /) pour calculer
les valeurs:
Exemple : (5 + 6) * 10
• JavaScript utilise l’opérateur d' affectation (=) pour attribuer des
valeurs aux variables:
Expressions JavaScript
• Une expression est une combinaison de valeurs, de variables et
d'opérateurs, qui calcule une valeur.
• Le calcul s'appelle une évaluation.
Exemples : 5 * 10
x * 10
"Salif" + " " + "Ndour" est évaluée à "Salif Ndour" 6
Le langage JavaScript
La syntaxe de JavaScript
Les mots-clés
• Les mots clés sont utilisés pour identifier les actions à effectuer.
• Par exemple le mot-clé var indique au navigateur de créer des variables.
Exemple:
var x; x = 5 + 6;
Les commentaires
• Toutes les instructions JavaScript ne sont pas "exécutées".
• Tout code placé après // (double slash) ou entre / * et * / est traité comme
un commentaire .
• Les commentaires sont ignorés et ne seront pas exécutés:
Exemple :
var x = 5; // Il sera exécuté
// var x = 6; Il ne sera pas exécuté 7
Le langage JavaScript
La syntaxe de JavaScript
Identificateurs JavaScript
• Les identificateurs sont des noms utilisés pour nommer des variables (des
mots clés, des fonctions et des labels).
• Les règles pour les noms légaux sont pratiquement les mêmes dans la
plupart des langages de programmation.
• En JavaScript, le premier caractère doit être une lettre, un trait de
soulignement (_) ou un signe dollar ($).
• Les caractères suivants peuvent être des lettres, des chiffres, des caractères
de soulignement ou des signes de dollar.
• Les caractères spéciaux et accentués sont interdits (é, à, ç, ï, etc..)
• Les mots réservés (comme JavaScript) ne sont pas autorisés
• Les nombres ne sont pas autorisés comme premier caractère. Ce qui permet
à JavaScript de distinguer facilement les identificateurs des nombres. 8
Le langage JavaScript
La syntaxe de JavaScript
Sensibilité à la casse
• Tous les identificateurs JavaScript sont sensibles à la casse.
Exemple : Les variables lastName et lastname sont différentes.
Les variables
Les variables sont des conteneurs conçues au stockage de valeurs de données.
Déclaration et affectation
• La déclaration d’une variable se fait comme suit var nomVariable;
• L’affectation d’une valeur à une variable : nomVariable = valeur;
• La lecture d'une variable non déclarée provoque une erreur
• Une variable déclarée sans affectation est indéfinie (undefined).
Identificateur
• Une variable doit être identifiée par un nom unique appelé identificateur
• Un identificateur peut être court (comme x et y) ou descriptif (comme age)
• Les règles les régissant sont décrites dans la partie sur la syntaxe.
al@bicalpro.com 10
Le langage JavaScript
Les variables
La portée
• les variables peuvent être globales ou locales.
• Exemple
var maVariable = "Cheikh"; maVariable =10;
al@bicalpro.com 11
Le langage JavaScript
Les variables
Le hissage (Hoisting) en JavaScript
• En mode non strict, une variable peut être utilisée avant qu'elle ait été
déclarée.
Exemple
x = 5; // affection de x
elem = document.getElementById("demo"); // Trouver un élément
elem.innerHTML = x; // Afficher x dans l’élément
var x; // Déclare x
var y = 12; // Déclare x
• Cela est possible car JavaScript utilise par défaut le hissage (Hoisting). Il
consiste à déplacer toutes les déclarations vers le haut.
• Par contre les initialisations ne sont pas concernées. C’est le cas pour y.
• Pour éviter les bugs, déclarez toujours toutes les variables au début de
E. M. NGUER – emnguer@ugb.edu.sn - UFR SAT UGB 12
chaque bloc.
Le langage JavaScript
Les variables
Le mode strict
• Le mode strict permet de définir un code JavaScript avec des règles strictes
• Il est utilisé depuis la version JavaScript 1.8.5 (ECMAScript version 5) avec
la directive "use strict".
• Cette directive n'est pas une déclaration, mais une expression littérale,
ignorée par les versions antérieures de JavaScript.
• Elle n'est reconnue qu'au début d'un script ou d'une fonction.
• Elle indique que le code doit être exécuté en mode strict. Par exemple on ne
peut pas utiliser des variables non déclarées.
• Il est pris en charge dans:
IE 10 et plus. Firefox version 4 et plus. Chrome version 13 et plus. Safari
version 5.1 et plus. Opera version 12 et plus .
E. M. NGUER – emnguer@ugb.edu.sn - UFR SAT UGB 13
Le langage JavaScript
Les variables
Le mode strict (les interdits)
• Utiliser une variable sans la déclarer : • Les littéraux numériques octals :
"use strict"; "use strict";
x = 3.14; // erreur var x = 010; // Erreur
• Supprimer une variable (ou un • Les caractères d'échappement :
objet) : "use strict";
"use strict"; var x = \010; // Erreur
var x = 3.14;
delete x; // erreur • Ecrire sur une propriété en lecture seule
"use strict";
• Supprimer une fonction : var obj = {};
"use strict"; Object.defineProperty(obj, "x",
function x(p1, p2) {}; {value:0, writable:false});
delete x; // erreur obj.x = 3.14; // Erreur
• Dupliquer un nom de paramètre :
"use strict"; E. M. NGUER – emnguer@ugb.edu.sn - UFR SAT UGB 14
Les variables
Le mode strict (les interdits)
• L'écriture sur une propriété get-only : • Utiliser la chaîne "arguments" comme
"use strict"; variable:
var obj = {get x() {return 0} }; "use strict";
obj.x = 3.14; // Erreur var arguments = 3.14; // Erreur
• La suppression d'une propriété • L'instruction with :
undeletable : "use strict";
"use strict"; with (Math){x = cos(2)}; // Erreur
delete Object.prototype; // Erreur
• Pour des raisons de sécurité, eval ()
• Utiliser la chaîne "eval" comme n'est pas autorisé à créer des variables
variable: dans la portée à partir de laquelle il a
"use strict"; été appelé:
var eval = 3.14; // Erreur "use strict";
• Dans les appels de fonction, la valeur this eval ("var x = 2");
était l'objet global. En mode strict,– emnguer@ugb.edu.sn
E. M. NGUER il est alert (x);
- UFR SAT UGB
// Erreur 15
maintenant indéfini.
Le langage JavaScript
elhadjimamadou.nguer@uvs.edu.sn 17
Le langage JavaScript
• Le type boolean
Le type booléen n’a que deux valeurs: true (vrai) et false (faux).
Exemple:
var x = true; elhadjimamadou.nguer@uvs.edu.sn 18
var y = false;
Le langage JavaScript
• Données primitives
Une valeur de données primitive est une simple valeur de données sans
propriétés et méthodes supplémentaires. L'opérateur typeof peut renvoyer un
de les types primitifs:
• string
• number
• boolean
• null
• undefined
elhadjimamadou.nguer@uvs.edu.sn 20
Le langage JavaScript
• Type Undefined
En JavaScript, une variable sans valeur a la valeur undefined et son type est
undefined.
Exemple:
var personne; // Sa vaeur est undefined, et son type est undefined
var personne = undefined; // Sa valeur est undefined, et son type est undefined
elhadjimamadou.nguer@uvs.edu.sn 21
Le langage JavaScript
Les opérateurs
• Les opérateurs arithmétiques
Ils permettent d’effectuer les opérations sur les nombres.
Opérateur Description
• Les opérateurs d’affectation + Addition
Ils permettent d’affecter des valeurs aux variables. - Soustraction
* Multiplication
Opérateur Exemple Equivalent à
/ Division
= x=y x=y
% Modulo
+= x += y x=x+y
++ Incrémentation
-= x -= y x=x-y
-- Décrémentation
*= x *= y x=x*y
/= x /= y x=x/y
%= x %= y x=x%y
op= X op= y x = x op y où op est un opérateur 23
al@bicalpro.com
Le langage JavaScript
Les opérateurs
Quelques opérateurs sur les chaînes de caractères
• La concaténation
– Var chaine = " bonjour " + " FI3/FCD1 "; Additionner un nombre
• Déterminer la longueur d’une chaîne avec une chaîne donne
– Var ch1 = " bonjour "; une chaîne!
– Var longueur = ch1.length;
• Identifier le nième caractère d’une chaîne
– Var ch1 =" Rebonjour ! ";
– Var carac = ch1.charAt(2);
• Extraction d’une partie de la chaîne
– Var dateDuJour = " 04/04/03 "
– Var mois = datteDuJour.substring(3, 5);
» 3: est l’indice du premier caractère de la sou-chaîne à extraire
» 5 : indice du dernier caractère à prendre en considération ; ce
caractère ne fera pas partie de la sous-chaîne à extraire
elhadjimamadou.nguer@uvs.edu.sn 24
Le langage JavaScript
Les opérateurs
• Les opérateurs de comparaison
Opérateur Description • Les opérateurs logiques
Opérateur Description
== Égale à
&& Et logique
=== Égalité de valeur et de type
!= Non égale || Ou logique
Les opérateurs
• Les opérateurs binaires
Les opérateurs binaires traitent leurs opérandes comme des séquences de 32
bits. Chaque opérande numérique est converti en un nombre de 32 bits. Le
résultat est converti en nombre. (20).toString(2)); // Affiche 10100
Opérateur Description Exemple équivalent Résultat Décimal
& AND 5&1 0101 & 0001 0001 1
| OR 5|1 0101 | 0001 0101 5
~ NOT ~x = - (x+1) Ex: -9=~8 ~ 5 ~0101 1010 10
^ XOR 5^1 0101 ^ 0001 0100 4
<< Décalage à gauche 5 << 1 0101 << 1 1010 10
Les opérateurs
• Les opérateurs binaires (Exemples)
9 >> 2 donne 2 :
9 (base 10) : 00000000000000000000000000001001 (base 2)
9 >> 2 (base 10) : 00000000000000000000000000000010 (base 2) = 2 (base 10)
-9 >> 2 donne -3, parce que le signe est préservé
-9 (base 10) : 11111111111111111111111111110111 (base 2)
-9 >> 2 (base 10) : 11111111111111111111111111111101 (base 2) = -3 (base 10)
9 >>> 2 donne 2
9 (base 10) : 00000000000000000000000000001001 (base 2)
9 >>> 2 (base 10) : 00000000000000000000000000000010 (base 2) = 2 (base 10)
-9 >>> 2 donne 1073741821, ce qui est différent de -9 >> 2 (qui donne -3)
-9 (base 10) : 11111111111111111111111111110111 (base 2)
-9 >>> 2 (base 10) : 00111111111111111111111111111101 (base 2) = 1073741821
(base 10) 27
al@bicalpro.com