Introduction à JavaScript
Introduction à JavaScript
M. BOUMEDIENE
xx xx 2020
1 Présentation de JavaScript
2 Fenêtre
3 DOM HTML
Plan
1 Présentation de JavaScript
2 Fenêtre
3 DOM HTML
Intérêt et historique
Pourquoi JavaScript ?
CSS permet une mise en forme automatique des pages HTML.
Intérêt et historique
Pourquoi JavaScript ?
CSS permet une mise en forme automatique des pages HTML.
HTML et CSS, n’assurent pas l’interaction avec les utilisateurs, ni le traitement de
leurs donnés.
Intérêt et historique
Pourquoi JavaScript ?
CSS permet une mise en forme automatique des pages HTML.
HTML et CSS, n’assurent pas l’interaction avec les utilisateurs, ni le traitement de
leurs donnés. =⇒ JavaScript.
Intérêt et historique
Pourquoi JavaScript ?
CSS permet une mise en forme automatique des pages HTML.
HTML et CSS, n’assurent pas l’interaction avec les utilisateurs, ni le traitement de
leurs donnés. =⇒ JavaScript.
JavaScript est un langage de script côté client.
Intérêt et historique
Pourquoi JavaScript ?
CSS permet une mise en forme automatique des pages HTML.
HTML et CSS, n’assurent pas l’interaction avec les utilisateurs, ni le traitement de
leurs donnés. =⇒ JavaScript.
JavaScript est un langage de script côté client.
Le code est interprété localement par le navigateur du client.
Intérêt et historique
Pourquoi JavaScript ?
CSS permet une mise en forme automatique des pages HTML.
HTML et CSS, n’assurent pas l’interaction avec les utilisateurs, ni le traitement de
leurs donnés. =⇒ JavaScript.
JavaScript est un langage de script côté client.
Le code est interprété localement par le navigateur du client.
Un code JavaScript permet par exemple d’afficher des messages,
vérifier les formulaires en contrôlant les données saisies par les utilisateurs,
assurer les animations, etc.
Intérêt et historique
Pourquoi JavaScript ?
CSS permet une mise en forme automatique des pages HTML.
HTML et CSS, n’assurent pas l’interaction avec les utilisateurs, ni le traitement de
leurs donnés. =⇒ JavaScript.
JavaScript est un langage de script côté client.
Le code est interprété localement par le navigateur du client.
Un code JavaScript permet par exemple d’afficher des messages,
vérifier les formulaires en contrôlant les données saisies par les utilisateurs,
assurer les animations, etc.
Historique
En 1995, Brendan Eich invente JavaScript (Netscape).
Intérêt et historique
Pourquoi JavaScript ?
CSS permet une mise en forme automatique des pages HTML.
HTML et CSS, n’assurent pas l’interaction avec les utilisateurs, ni le traitement de
leurs donnés. =⇒ JavaScript.
JavaScript est un langage de script côté client.
Le code est interprété localement par le navigateur du client.
Un code JavaScript permet par exemple d’afficher des messages,
vérifier les formulaires en contrôlant les données saisies par les utilisateurs,
assurer les animations, etc.
Historique
En 1995, Brendan Eich invente JavaScript (Netscape).
Microsoft ne tarde pas à développer son propre langage Script nommé JScript.
Intérêt et historique
Pourquoi JavaScript ?
CSS permet une mise en forme automatique des pages HTML.
HTML et CSS, n’assurent pas l’interaction avec les utilisateurs, ni le traitement de
leurs donnés. =⇒ JavaScript.
JavaScript est un langage de script côté client.
Le code est interprété localement par le navigateur du client.
Un code JavaScript permet par exemple d’afficher des messages,
vérifier les formulaires en contrôlant les données saisies par les utilisateurs,
assurer les animations, etc.
Historique
En 1995, Brendan Eich invente JavaScript (Netscape).
Microsoft ne tarde pas à développer son propre langage Script nommé JScript.
JavaScript a été standardisé par l’organisme de régulation ECMAScript.
Intérêt et historique
Pourquoi JavaScript ?
CSS permet une mise en forme automatique des pages HTML.
HTML et CSS, n’assurent pas l’interaction avec les utilisateurs, ni le traitement de
leurs donnés. =⇒ JavaScript.
JavaScript est un langage de script côté client.
Le code est interprété localement par le navigateur du client.
Un code JavaScript permet par exemple d’afficher des messages,
vérifier les formulaires en contrôlant les données saisies par les utilisateurs,
assurer les animations, etc.
Historique
En 1995, Brendan Eich invente JavaScript (Netscape).
Microsoft ne tarde pas à développer son propre langage Script nommé JScript.
JavaScript a été standardisé par l’organisme de régulation ECMAScript.
En 2014, la version 6 (ES 6) a été publiée.
4/28 Mohammed Boumediene JavaScript
Présentation de JavaScript
Où écrire le code JS
Interne, Externe
Un code JavaScript (JS) est intégré dans une page HTML via la balise <script>.
1 <!DOCTYPE h t m l>
2 <html>
3 <head>
4 <meta http−equiv= " c o n t e n t − t y p e " c o n t e n t = " t e x t / h t m l ;
5 c h a r s e t = u t f − 8 ">
6 <t i t l e>J a v a S c r i p t</ t i t l e>
7 <!−− S c r i p t I n t e r n e −−>
8 <s c r i p t type= " t e x t / j a v a s c r i p t ">
9 // C e c i e s t un c o m m e n t a i r e s u r une s e u l e l i g n e
0 function s c r i p t I n t e r n e () {
1 window . a l e r t ( " A p p e l v e r s un s c r i p t i n t e r n e ! " ) ;
2 }
3 </ s c r i p t>
4 </ head>
Où écrire le code JS
Interne, Externe
Un code JavaScript (JS) est intégré dans une page HTML via la balise <script>.
Déclarée dans l’en-tête (head) et/ou le corps (body) de la page.
1 <!DOCTYPE h t m l>
2 <html>
3 <head>
4 <meta http−equiv= " c o n t e n t − t y p e " c o n t e n t = " t e x t / h t m l ;
5 c h a r s e t = u t f − 8 ">
6 <t i t l e>J a v a S c r i p t</ t i t l e>
7 <!−− S c r i p t I n t e r n e −−>
8 <s c r i p t type= " t e x t / j a v a s c r i p t ">
9 // C e c i e s t un c o m m e n t a i r e s u r une s e u l e l i g n e
0 function s c r i p t I n t e r n e () {
1 window . a l e r t ( " A p p e l v e r s un s c r i p t i n t e r n e ! " ) ;
2 }
3 </ s c r i p t>
4 </ head>
Où écrire le code JS
Interne, Externe
Un code JavaScript (JS) est intégré dans une page HTML via la balise <script>.
Déclarée dans l’en-tête (head) et/ou le corps (body) de la page.
Où écrire le code JS
Interne, Externe
Un code JavaScript (JS) est intégré dans une page HTML via la balise <script>.
Déclarée dans l’en-tête (head) et/ou le corps (body) de la page.
Le script peut être interne ou externe à la page =⇒ détails voir "Page_JS1.html"
Syntaxe
Variables
Les variables sont déclarées avec le mot clé var mais sans spécifier de type
1 v a r y = 6 . 2 6 ; // nombre r é e l
Syntaxe
Variables
Les variables sont déclarées avec le mot clé var mais sans spécifier de type
1 v a r y = 6 . 2 6 ; // nombre r é e l
Type Description
nombre entier, réel
chaîne de caractères texte
objet objet et ses propriétés
boolean true ou false
tableau le premier élément a l’indice 0
undefined variable sans valeur
Déclaration de variables
1 var x = 5; // nombre e n t i e r
2 v a r y = 6 . 2 6 ; // nombre r é e l
3 v a r z = 11 e3 ; // nombre r é e l
4
5 v a r prenom = "Ahmed" , nom = " Ben D a l i " ; // cha î ne de c a r a c t è r e s
6
7 v a r objetNom = { prenom : "Ahmed" , nom : " Ben D a l i " } ; // o b j e t
8
9 v a r t e s t 1 = t r u e , t e s t 2 = f a l s e ; // b o o l e a n
0
1 v a r m o d e l e = [ " p o l o " , " g o l f " , " p a s s a t " ] ; // t a b l e a u
2 v a r m1 = m [ 0 ] ; // p r e m i e r é l é ment
3
4 var v a r i a b l e ; /∗ v a r i a b l e non d é f i n i e ∗/
5
6 v a r p e r s o n n e = "Ahmed W a l i " , v e h i c u l e = " P o l o " , p r i x = 2 0 0 0 ;
Syntaxe
Fonctions
La déclaration s’effectue à l’aide du mot clé function où les instructions sont
délimitées par des accolades.
1 f u n c t i o n nom ( p a r a m e t e r e 1 , p a r a m e t e r e 2 , p a r a m e t e r e 3 , ...) {
2 /∗ m e t t r e i c i l e c o d e à e x é c u t e r ∗/
3 }
Syntaxe
Fonctions
La déclaration s’effectue à l’aide du mot clé function où les instructions sont
délimitées par des accolades.
1 f u n c t i o n nom ( p a r a m e t e r e 1 , p a r a m e t e r e 2 , p a r a m e t e r e 3 , ...) {
2 /∗ m e t t r e i c i l e c o d e à e x é c u t e r ∗/
3 }
Syntaxe
Fonctions
La déclaration s’effectue à l’aide du mot clé function où les instructions sont
délimitées par des accolades.
1 f u n c t i o n nom ( p a r a m e t e r e 1 , p a r a m e t e r e 2 , p a r a m e t e r e 3 , ...) {
2 /∗ m e t t r e i c i l e c o d e à e x é c u t e r ∗/
3 }
1 f u n c t i o n maFonction ( x , y ) {
2 var z = x ∗ y ;
3 return z ;
4 }
Instruction conditionnelle
1 var x = 10;
2
3 i f ( x > 0) {
4 /∗ b l o c i f ∗/
5 a l e r t ( " l e nombre e s t s u p é r i e u r à z é r o " ) ;
6 } else {
7 /∗ b l o c e l s e ∗/
8 a l e r t ( " l e nombre e s t i n f é r i e u r ou é g a l à z é r o " ) ;
9 }
Boucles for
Une variante de for est la boucle for/in. Cette dernière parcourt un objet en accédant à
toutes ses propriétés.
1 v a r p e r s o n n e = {nom : " Ben D a l i " , prenom : "Ahmed" , ag e : 2 1 } ;
2
3 var text = " " ;
4 var x ;
5 for ( x in personne ) {
6 t e x t e += p e r s o n n e [ x ] + " " ;
7 }
Boucles while
La boucle while répète l’exécution d’une partie du code tant que la condition est vraie.
1 v a r i = 0 , t e x t e =" " ;
2 w h i l e ( i < 10) {
3 t e x t e += " Le nombre e s t "+ i + "<br>" ;
4 i ++;
5 }
Une variante de la boucle while est la boucle do/while. Cette dernière s’exécute au
moins une fois avant même d’évaluer la condition.
1 v a r i = 0 , t e x t e =" " ;
2 do {
3 t e x t e += " Le nombre e s t "+ i + "<br>" ;
4 i ++;
5 } w h i l e ( i < 10) ;
Plan
1 Présentation de JavaScript
2 Fenêtre
3 DOM HTML
Objets de la fenêtre
window
JavaScript est un langage côté client ⇒ exécuter par le navigateur
Objets de la fenêtre
window
JavaScript est un langage côté client ⇒ exécuter par le navigateur
Pour JavaScript plusieurs objets constituent la fenêtre du navigateur c.-a.-d.
l’objet window
Objets de la fenêtre
window
JavaScript est un langage côté client ⇒ exécuter par le navigateur
Pour JavaScript plusieurs objets constituent la fenêtre du navigateur c.-a.-d.
l’objet window
1 location : procure des informations sur l’URL de la page visitée.
Objets de la fenêtre
window
JavaScript est un langage côté client ⇒ exécuter par le navigateur
Pour JavaScript plusieurs objets constituent la fenêtre du navigateur c.-a.-d.
l’objet window
1 location : procure des informations sur l’URL de la page visitée.
2 history : représente l’historique du navigateur.
Objets de la fenêtre
window
JavaScript est un langage côté client ⇒ exécuter par le navigateur
Pour JavaScript plusieurs objets constituent la fenêtre du navigateur c.-a.-d.
l’objet window
1 location : procure des informations sur l’URL de la page visitée.
2 history : représente l’historique du navigateur.
3 navigator : regroupe des informations sur le navigateur du visiteur.
Objets de la fenêtre
window
JavaScript est un langage côté client ⇒ exécuter par le navigateur
Pour JavaScript plusieurs objets constituent la fenêtre du navigateur c.-a.-d.
l’objet window
1 location : procure des informations sur l’URL de la page visitée.
2 history : représente l’historique du navigateur.
3 navigator : regroupe des informations sur le navigateur du visiteur.
4 popup : pour interagir avec les utilisateurs.
Objets de la fenêtre
window
JavaScript est un langage côté client ⇒ exécuter par le navigateur
Pour JavaScript plusieurs objets constituent la fenêtre du navigateur c.-a.-d.
l’objet window
1 location : procure des informations sur l’URL de la page visitée.
2 history : représente l’historique du navigateur.
3 navigator : regroupe des informations sur le navigateur du visiteur.
4 popup : pour interagir avec les utilisateurs.
5 document : une arborescence d’objets représentant la page HTML.
Location
L’objet location procure des informations sur l’URL de la page visitée : adresse, port,
protocole, etc.
Location
L’objet location procure des informations sur l’URL de la page visitée : adresse, port,
protocole, etc.
Propriété/Méthodes Description
href URL de la page visitée
hostname domaine de la page
pathname chemin et nom du fichier de la page
protocol protocole utilisé
assign(...) charger une nouvelle page
Location
L’objet location procure des informations sur l’URL de la page visitée : adresse, port,
protocole, etc.
Propriété/Méthodes Description
href URL de la page visitée
hostname domaine de la page
pathname chemin et nom du fichier de la page
protocol protocole utilisé
assign(...) charger une nouvelle page
History
L’objet history représente l’historique du navigateur ce qui permet l’accès aux URL
précédentes et suivantes.
History
L’objet history représente l’historique du navigateur ce qui permet l’accès aux URL
précédentes et suivantes.
Méthodes Description
back retourner à l’URL précédente
farward aller à l’URL suivante
go Accéder à l’URL en indiquant la position de la page dans
l’historique. go(-1) est similaire à back(), go(1) est similaire à
farward()
History
L’objet history représente l’historique du navigateur ce qui permet l’accès aux URL
précédentes et suivantes.
Méthodes Description
back retourner à l’URL précédente
farward aller à l’URL suivante
go Accéder à l’URL en indiquant la position de la page dans
l’historique. go(-1) est similaire à back(), go(1) est similaire à
farward()
1 h i s t o r y . b a c k ( ) ; // a f f i c h e r l a page p r é c é d e n t e
1 h i s t o r y . go ( 1 ) ; // a f f i c h e r l a page s u i v a n t e
Navigator
Navigator
Propriétés Description
appName nom du navigateur
appVersion version du navigateur
platform plate-forme du navigateur (système d’exploitation)
language langue du navigateur
Navigator
Propriétés Description
appName nom du navigateur
appVersion version du navigateur
platform plate-forme du navigateur (système d’exploitation)
language langue du navigateur
Popup
Popup
Popup
Popup
Popup
1 var text ;
2 i f ( c o n f i r m ( " Appuyez un b o u t o n ! " ) == t r u e )
3 t e x t = " Vous a v e z appuy é OK! " ;
4 else
5 t e x t = " Vous a v e z appuy é C a n c e l ! " ;
Plan
1 Présentation de JavaScript
2 Fenêtre
3 DOM HTML
DOM
C’est via ce DOM que JavaScript interagit avec la page HTML afin de :
DOM
C’est via ce DOM que JavaScript interagit avec la page HTML afin de :
modifier les éléments HTML,
DOM
C’est via ce DOM que JavaScript interagit avec la page HTML afin de :
modifier les éléments HTML,
modifier les attributs HTML,
DOM
C’est via ce DOM que JavaScript interagit avec la page HTML afin de :
modifier les éléments HTML,
modifier les attributs HTML,
modifier les styles CSS internes à la page,
DOM
C’est via ce DOM que JavaScript interagit avec la page HTML afin de :
modifier les éléments HTML,
modifier les attributs HTML,
modifier les styles CSS internes à la page,
supprimer des éléments ainsi que des attributs HTML de la page,
DOM
C’est via ce DOM que JavaScript interagit avec la page HTML afin de :
modifier les éléments HTML,
modifier les attributs HTML,
modifier les styles CSS internes à la page,
supprimer des éléments ainsi que des attributs HTML de la page,
ajouter de nouveaux éléments et attributs,
DOM
C’est via ce DOM que JavaScript interagit avec la page HTML afin de :
modifier les éléments HTML,
modifier les attributs HTML,
modifier les styles CSS internes à la page,
supprimer des éléments ainsi que des attributs HTML de la page,
ajouter de nouveaux éléments et attributs,
intercepter les évènements HTML de la page,
DOM
C’est via ce DOM que JavaScript interagit avec la page HTML afin de :
modifier les éléments HTML,
modifier les attributs HTML,
modifier les styles CSS internes à la page,
supprimer des éléments ainsi que des attributs HTML de la page,
ajouter de nouveaux éléments et attributs,
intercepter les évènements HTML de la page,
définir de nouveaux évènements HTML.
Plan
1 Présentation de JavaScript
2 Fenêtre
3 DOM HTML
L’action de l’utilisateur : mouvement de la souris, le clic sur un lien par exemple, etc
=⇒ déclenche un évènement.
L’action de l’utilisateur : mouvement de la souris, le clic sur un lien par exemple, etc
=⇒ déclenche un évènement.
=⇒ appel à une fonction communément nommée gestionnaire d’évènements
L’action de l’utilisateur : mouvement de la souris, le clic sur un lien par exemple, etc
=⇒ déclenche un évènement.
=⇒ appel à une fonction communément nommée gestionnaire d’évènements
Pour affecter un gestionnaire d’évènements à un objet HTML, il suffit de
renseigner l’attribut correspondant à l’évènement par le nom de la fonction traitant
cet évènement.
1 function goAlert () {
2 a l e r t ( " C e c i e s t une bo î t e de d i a l o g u e A l e r t " ) ;
3 }
Propriété Description
onclick clic simple
ondbclick clic double
onmousemove déplacement de la souris sur un élément
onmouseover entrée de la souris dans l’espace d’un élément
onmouseout sortie de l’espace d’un évènement
onmouseup relâchement du bouton de la souris après le clic
onmousedown action de clic avant de relâcher la souris
onkeydown touche du clavier entrain d’être appuyée
onkeyup touche du clavier relâchée
onkeypress touche du clavier appuyée
oninput changement dans une zone de saisie
onsubmit envoi d’un formulaire au serveur
onload page chargée
onfocus focus sur un élément
onblur perte du focus