Académique Documents
Professionnel Documents
Culture Documents
Programmation Web
JavaScript
Javascript est un langage de programmation très récent, créé par les sociétés Netscape
et Sun Microsystems vers la fin de l'année 1995.Son objectif principal est d’introduire
de l'interactivité avec les pages HTML et effectuer des traitements simples sur le poste
de travail de l'utilisateur.
Les scripts vont permettre de rendre une page Web plus dynamique.
• En animant certaines zones de la page,
• Ou en faisant réagir certains élément de la page en fonction de certains
événements provoqués par l’utilisateur, ou du navigateur utilisé,… (exemple : sur
clic de la souris, changer la couleur du texte,…)
17-Mar-20 Cours JavaScript 2
Généralités(2/2)
JavaScript est un langage
Langage de programmation lié à HTML.
Le JavaScript est écrit directement au sein du document HTML sous forme d'un
script encadré par des balises HTML spéciales.
<script language="JavaScript">
............
</script>
• Le code JavaScript s'insère le plus souvent dans la page HTML elle même.
• C'est la méthode la plus simple et la plus fréquemment utilisée par les
développeurs de sites Internet.
– Les deux balises de Javascript doivent être placés entre les Tags <body> et </body>
dans le cas d'une exécution directe ou entre les Tags <head> et </head> de la page
HTML pour une exécution différée.
– Stocké dans un fichier sur le serveur à son adresse d'appel sous forme de TEXTE
SIMPLE portant l'extension .js
– Simplifie la maintenance des sites faisant appel à des modules JavaScript communs à
plusieurs pages HTML.
17-Mar-20 Cours JavaScript 6
Entrée et sortie de données avec JavaScript
• 3 types de boites de messages peuvent être affichés en utilisant
Javascript : Alerte, Confirmation et Invite
– Méthode alert() alert('Attention!!.');
• sert à afficher à l’utilisateur des informations simples de type texte. Une fois que ce
dernier a lu le message, il doit cliquer sur OK pour faire disparaître la boîte
– Méthode confirm()
confirm('voulez vous continuer ?');
• permet à l’utilisateur de choisir entre les boutons OK et Annuler.
– Méthode prompt()
• La méthode prompt() permet à l’utilisateur de taper son propre message en réponse à la
question posée
• Un nombre à virgule est séparé par un point (.) et non par une virgule
– Encadrer le texte par un slash suivi d'une étoile (/*) et la même séquence
inversée (*/)
• Déclaration et affectation
• Le mot-clé var permet de déclarer une ou //Déclaration de i, de j et de k.
var i, j, k;
plusieurs variables.
//Affectation de i.
• Après la déclaration de la variable, il est
i = 1;
possible de lui affecter une valeur par
//Déclaration et affectation de prix.
l'intermédiaire du signe d'égalité (=).
var prix = 0;
• Si une valeur est affectée à une variable
sans que cette dernière ne soit déclarée,
alors Javascript la déclare
automatiquement.
• Déclaration et affectation
– La lecture d'une variable non déclarée provoque une erreur
• La portée
– les variables peuvent être globales ou locales.
– Une variable globale est déclarée en début de script et est
accessible à n'importe quel endroit du programme.
– Une variable locale est déclarée à l'intérieur d'une fonction et n'est
utilisable que dans la fonction elle-même.
• Exemple
var maVariable = ‘ génie logiciel ’;
maVariable =10;
• String
• Boolean
Caractère Description
\b Un caractère en arrière
\f Saut de page
\n Saut de ligne
\r Retour chariot
\t Tabulation
\' Apostrophe ou guillemet simple
\" Guillemet double
\\ Backslash (\)
Exemple
Remarques:
• la condition doit être entre des parenthèses ;
• il est possible de définir plusieurs conditions à remplir avec les opérateurs ET, OU,
NOT … (&&, ||, ! …), par exemple:
if ((condition1)&&(condition2)) teste si les deux conditions sont vraies ; if
((condition1)||(condition2)) exécutera les instructions si l'une ou l'autre des deux
conditions est vraie ;
• s'il n'y a qu'une instruction, les accolades ne sont pas nécessaires.
17-Mar-20 Cours JavaScript 16
Exemples :
3. if ( somme==0 )
{
somme= x+y ;
}
else
{
total += somme ;
}
if (condition_vraie)
{
// série d'instructions ;
}
else
{
// autre série d'instructions ;
}
1. switch (n)
2. {
case 1:
3. // liste d'instructions pour n==1;
break;
4. case 2:
5. // liste d'instructions pour n==2;
break;
6. …
7. default:
8. // liste d'instructions pour échec sur n;
break;
9. }
8. case 2:
9. if (reponse==d) alert(‘réponse correcte’);
10. else alert(‘réponse incorrecte’);
11. break;
12. case 3:
13. if (reponse==a) alert(‘réponse correcte’);
14. else alert(‘réponse incorrecte’);
15. break;
16. …
17. }
• L'instruction while représente un autre moyen d'exécuter plusieurs fois la même série
d'instructions.
• La syntaxe de cette expression est la suivante:
• Cette instruction exécute la liste d'instructions tant que la condition est réalisée (while est un
mot anglais qui signifie tant que).
Remarques:
• La condition de sortie pouvant être n'importe quelle structure conditionnelle, les risques de
boucle infinie (boucle dont la condition est toujours vraie) sont grands, c'est-à-dire qu'elle
risque de provoquer un plantage du navigateur!
<html><head><title>Programme 1</title></head>
<body>
<H3>Exercice 1 : Changement de couleur</H3>
<script language="JavaScript">
couleur=prompt("Quelle couleur de fond souhaitez vous :gris, bleu, vert ? ");
if (couleur=="vert"){
document.bgColor="#99FF66";
}
if (couleur=="bleu"){
document.bgColor="#669999";
}
if (couleur=="gris"){
document.bgColor="##C0C0C0";
}
</script></body></html>
17-Mar-20 Cours JavaScript 25
Exercice d'application 2:
Lire le Nom du client, le nom du produit, la quantité, le prix unitaire. Afficher les informations
précédentes avec le Prix HT et le Prix TTC.
Le taux de TVA est constant.
Exemple:
function nom_de_la_fonction(arguments) {
Déclaration des fonctions :
... code des instructions ...}
<BODY>.
<HTML> Déclaration de la fonction
<HEAD>
<SCRIPT LANGUAGE="Javascript">
function message() {
document.write("Bienvenue à ma page");
} L'appel de la fonction
</SCRIPT>
</HEAD>
<BODY onLoad="message();">
</BODY>
</HTML>
17-Mar-20 Cours JavaScript 28
Les fonctions(1/4)
Exercice d'application :
•
Par exemple, le navigateur est un objet qui s'appelle "navigator
navigator".
•
La fenêtre du navigateur se nomme "window
window"
• document".
La page HTML est un autre objet, que l'on appelle "document
•
Un formulaire à l'intérieur d'un "document
document", est aussi un objet.
•
Un lien hypertexte dans une page HTML, est encore un autre objet. Il s'appelle
"link
link".
• etc...
– Les objets javascript peuvent réagir à des "Evénements".
– Accès aux propriétés d’un objet
• voiture.couleur.value
• voiture.couleur.value = verte
Pour accéder à un objet, il faudra donner le chemin complet de l'objet en allant du contenant le
plus extérieur à l'objet référencé.
Donc pour accéder à la case radio : "semaine" (window).document.formulaire.radio
Et pour accéder au bouton (window).document.formulaire.bouton.
document.form.radio[0].checked
Par exemple pour modifier la propriété value: window.document.forms[0].text.value
17-Mar-20 Cours JavaScript 32
Les Objets (4/4)
• L’opérateur New
– L'opérateur new est utilisé pour créer une nouvelle instance ou un
nouveau type d'objet défini par l'utilisateur ou de l'un des types
d'objets prédéfinis, Array, Boolean, Date, Function, Image, Number,
Object, ou String.
• nom_objet = new type_objet
type_objet((parametres
parametres))
Exemple :
var MonTableau1 = new Array();
var MonTableau2 = new Array(15);
var MonTableau3 = new Array(1,"Salut",3.14);
<script language="JavaScript">
var T = new Array(3);
var S ="";
for (var i = 0; i < T.length; i++){
T[i] = i;
}
T[5] = "Pourtant";
for (var i = 0; i < T.length; i++){
S += "En " + i + " on trouve " + T[i] + "\n";
}
alert(S);
</script>
17-Mar-20 Cours JavaScript 34
Comment définir un tableau ?(2/3)
Il existe cependant une autre manière pour initier un tableau. C’est l’initialisation directe:
Tab=[’’Lundi’’,’’Mardi’’,’’Mercredi’’];
Dans ce cas on a pas besoin de déclarer l’objet Array comme on n’a pas besoin de
déterminer le nombre d’éléments indexés.
Exemples
Tab=[‘’Lundi’’,’’Mardi’’,’’Mercredi’’,’’Jeudi’’];
document.write(Tab.length); // écrit 4
document.write(Tab.join(‘’-’’));
// écrit Lundi-Marci-Mercredi-Jeudi
document.write(Tab.reverse().join(‘’-’’));
// écrit Jeudi-Mercredi-Mardi-Lundi
document.write(tab.sort().join(‘’-’’));
// écrit Jeudi-Lundi-Mardi-Mercredi
– Propriétés :
– Méthodes :
• abs( ), exp( ), log(), sin( ), cos( ), tan( ), asin( ), acos( ), atan( ), max( ), min( ),
sqrt( ) sont les opérations mathématiques habituelles;
• atan2( ) : retourne la valeur radian de l'angle entre l'axe des abscisses et un point;
– Méthodes :
<script language="Javascript">
dat=new Date;
mois=dat.getMonth()+1;
if (mois<10) { mois="0"+mois; }
alert(dat.getDate()+"/"+mois+"/"+dat.getYear());
</script>
• Evénement onClick:
• Se produit lorsque l’utilisateur clique sur un élément spécifique dans une
page, comme un lien hypertexte, une image, un bouton, du texte, etc.
<HTML><BODY>
<INPUT TYPE="Button" Value="cliquer ici”
onClick="alert('Clic')">
</BODY></HTML>
• Événement onMouseover
• Analogue à onClick sauf qu’il suffit que l’utilisateur place le pointeur de sa
souris sur l’un des éléments précités (lien hypertexte, image, bouton, texte, etc.)
pour qu’il ait lieu
• Événement onMouseout
• A l’inverse de onMouseover, cet événement se produit lorsque le pointeur de la
souris quitte la zone de sélection d’un élément.
<HTML><BODY>
<IMG SRC="image.gif" onMouseOver="src='image2.gif';"
onMouseOut="src='image.gif';">
</BODY></HTML>
– Pour pouvoir distinguer les différents objets-éléments d’une page web, il suffit de
leur donner un nom à travers de l’attribut NAME
– Pour adresser un objet, il ne suffit pas de donner son nom : il faut aussi préciser son
« chemin d’accès » dans l’arborescence de la structure
<HTML><BODY
onLoad="window.document.formulaire.zone.value='Bonjour';">
– Si lename="formulaire"><INPUT
<FORM nom de la fenêtre est omis, le navigateur utilisera par défaut
NAME="zone" la fenêtre courante
TYPE="text">
</FORM></BODY></HTML>
– Dans le cas de cadres (frames), il est pertinent de donner le nom de la fenêtre