Introduction à JavaScript
Introduction à JavaScript
JavaScript
C’est quoi le JavaScript ?
Le JavaScript est un langage de script qui offre de nombreuses possibilités. Sa présence croissante
sur le web permet de naviguer sur des sites de plus en plus interactifs et rapides.
Il permet, entre autres, d'introduire sur une page web ou HTML des petites animations ou des
effets. Le langage JavaScript se distingue des langages serveurs par le fait que l'exécution des tâches
est opérée par le navigateur lui-même, sur l'ordinateur de l'utilisateur, et non sur le serveur web. Il
s'active donc généralement sur le poste client plutôt que côté serveur.
JavaScript externe :
Généralement, un script est écrit dans un fichier « .js » à part. Pour exécuter un script
depuis un fichier dans la page web, il suffira d'utiliser <script> avec un
attribut « src » pointant vers le fichier du script en utilisant l'URL du fichier
JavaScript interne :
Il est également possible d'insérer du code JavaScript directement dans la
balise <script> sans fournir d'attribut « src » .
Exemple
<script>
[Link]('load', function () {
[Link]('Cette fonction est exécutée une fois
quand la page est chargée.');
});
</script>
Pour éviter des problèmes de chargement sur les pages, il est conseillé de placer les
éléments <script> juste avant la fermeture de l’élément <body>.
<script> <script>
Les commentaires
<script>
instruction_1; // Ceci est ma première instruction
instruction_2;
/* La troisième instruction ci-dessous,
avec un commentaire sur deux lignes */
instruction_3;
</script>
Les variables en JavaScript
Une variable consiste en un espace de stockage, qui permet de garder en mémoire tout type
de données. La variable est ensuite utilisée dans les scripts. Une variable contient seulement
des caractères alphanumériques, le $ (dollar) et le _ (underscore) ; elle ne peut pas commencer
3ème info STI
Page 2
par un chiffre ni prendre le nom d'une fonction existante de Javascript. On crée la variable et
on lui affecte (ou attribue) une valeur :
<script> <script>
var myVariable; var myVariable = 2;
ou
myVariable = 2; </script>
</script>
<script>
var userName = prompt('Entrez votre prénom :');
alert(userName);
// Affiche le prénom entré par l'utilisateur
</script>
<script>
var first, second, result;
first = prompt('Entrez le premier chiffre :');
second = prompt('Entrez le second chiffre :');
result = parseInt(first) + parseInt(second);
/* la fonction parseInt()transforme la chaîne de
caractères en nombre */
alert(result);
</script>
} else {
<script>
var a = 1,b=2; <script>
if (a > b) { if (confirm('Voulez-vous exécuter le
result = 'a est le plus grand'’; code Javascript de cette page ?')) {
} alert('Le code a bien été exécuté !');
alert(result); }
/* La fonction alert n'affiche rien car </script>
la condition non vérifiée*/
</script>
La structure conditionnelle if…else (« si… sinon » en français) va être plus complète que
la condition if puisqu’elle va nous permettre d’exécuter un premier bloc de code si un
test renvoie true ou un autre bloc de code dans le cas contraire.
<script> <script>
var a = 1,b=2; if (confirm('Pour accéder à ce site vous
if (a > b) { devez être une fille, cliquez sur
result = 'a est le plus grand'; "OK" si c\'est le cas.')) {
} alert('Vous allez être redirigé vers le
else site.');
{ }
result = 'b est le plus grand'; else {
} alert("Désolé, vous n'avez pas accès à
alert(result); ce site.");
// la fonction alert affiche "condition }
pas verifiéé" </script>
</script>
<script> <script>
var a = 1,b=2; var etage = parseInt(prompt("Entrez l'étage
if (a > b) { où l'ascenseur doit se rendre (de -2 à 30)
result = 'a est le plus grand'; :"));
} if (etage == 0) {
else if (a<b) alert('Vous vous trouvez déjà au rez-de-
{ chaussée.');
result = 'b est le plus grand'; } else if (-2 <= etage && etage <= 30)
} {
else alert("Direction l'étage n°"+etage+' !');
{ }
result = 'a et b sont egaux'; else {
} alert("L'étage spécifié n'existe pas.");
alert(result); }
// la fonction alert affiche "b le </script>
plus grand"
</script>
switch (expression) {
case valeur1: switch (fruit=prompt('donner le nom de
// Instructions à exécuter lorsque le résultat
fruit que vous vouler'))
// de l'expression correspond à valeur1
{
instructions1;
[break;] case "Oranges":
case valeur2: alert ("Oranges : 2 Dt le kilo.");
// Instructions à exécuter lorsque le résultat break;
// de l'expression correspond à valeur2 case "Pommes":
instructions 2; alert("Pommes : 3,5 DT le kilo.");
[break;]
break;
...
case "Bananes":
case valeurN:
// Instructions à exécuter lorsque le résultat case "Cerises":
// de l'expression à valeurN alert ("Bananes et Cerises : 9,5 Dt le
instructionsN; kilo.");
[break;] break;
[default:] default:
// Instructions à exécuter lorsqu'aucune des
alert("Désolé, nous n'avons plus de " +
valeurs
fruit + ".");
} }
Les ternaires
L'opérateur ternaire conditionnel est le seul opérateur JavaScript qui comporte trois opérandes. Cet
opérateur est fréquemment utilisé comme raccourci pour la déclaration de l’instructions /if...else.
<script> <script>
var nbr = 0; var nbr = 0;
Exemple
<script> <script>
for(initialisation; condition; incrémentation) var i=0;
Exemple
Syntaxe
{ for (i=0;i<=6;i++)
instruction_1; {
instruction_2;
[Link] ("le nbr est:"+ i);
instruction_3;
} }}
</script> </script>
<script>
for (var prenoms = '', prenom; true;) { / *ici sans incrémentation nécessaire
Exemple
<script> <script>
while (condition) { var nbr = 1;
Exemple
Syntaxe
<script>
var pseudos = '', pseudo,
continuer=confirm ('vous devez saisir un pseudo ') ;
while (continuer) {
pseudo = prompt('Entrez un pseudo :');
if (pseudo) {
pseudos += pseudo + ' ';
Exemple
instruction_1;
do {
instruction_2;
instruction_3; i += 1;
} [Link](i);
While (condition) } while (i < 5); // 5 sera afficher
</script> </script>
3ème info STI
Page 2
<script>
let somme = 0;
let nbr = 0;
/* L'instruction let permet de déclarer une variable dont la portée est celle
Exemple
du bloc courant, éventuellement en initialisant sa valeur */
do {
somme += nbr;
nbr = parseInt(prompt('Entrer un nombre: '));
} while(nbr >= 0);
alert('la somme est ' + somme);
</script>
TP
Utilisons la boucle do-while pour développer un jeu de devinettes simple. Le script génère un
entier aléatoire entre 1 et 12. Vous devez deviner le nombre en faisant des suppositions jusqu'à
ce que le nombre que vous choisissez corresponde au nombre choisi par le script.
<script>
// Génération de nombre secret entre deux valeurs MIN et MAX
const MIN = 1;
const MAX = 12;
let nombresecret = [Link]([Link]() * (MAX - MIN + 1)) + MIN;
function nom_fonction(arguments) {
// Le code que la fonction va devoir exécuter
</Script>
<script>
function Multiplier_par_deux() {
Exemple
function showMsg() {
var message = 'Ici la variable locale !';
alert(message);
Les arguments
Les paramètres donnés lors de l'appel d'une fonction sont appelés les arguments de la
fonction. Les arguments sont passés par valeur (by value en anglais). Si la fonction modifie
la valeur d'un argument, ce changement ne se répercute pas en dehors de la fonction.
Exemple
var message = 'Ici la variable locale !';
alert(message);
TP
<!DOCTYPE>
<html lang="fr-FR">
<head>
<title>getElementById example</title>
</head>
<body>
<script>
TP1
function changeColor(newColor) {
var element = [Link]('para');
[Link] = newColor; }
</script>
<p id="para">Paragraphe à colorier</p>
<button onclick="changeColor('blue');">bleu</button>
<button onclick="changeColor('red');">rouge</button>
</body>
</html>
<!DOCTYPE>
<html lang="fr-FR"><head></head>
<body>
<div style="text-align:center">Cliquer sur les boutons dans le bon
ordre.<br>
<input type="button" id="btn1" onClick="ajouter(this)" value="est">
<input type="button" id="btn2" onClick="ajouter(this)" value="soleil">
<input type="button" id="btn3" onClick="ajouter(this)" value="chaud">
<input type="button" id="btn4" onClick="ajouter(this)" value="le"><br>
<input type="text" id="text" size="60" readonly="true" style="background-
color:#FFFFFF; border:#FFFFFF none 0px; text-align:center; color:#006600;
font-weight:bold">
<br><br>
<input type="button" value="Recommencer" onClick="raz()"></div>
<script>
TP2
function ajouter(objet) {
[Link]("text").value+=[Link];
[Link]("text").value+=' ';
[Link]=true;
if ([Link]('text').value == "le soleil est chaud ") {
[Link]('text').value="Le soleil est chaud."
alert('BRAVO !!!');} }
function raz() {
[Link]('text').value="";
[Link]('btn1').disabled=false;
[Link]('btn2').disabled=false;
[Link]('btn3').disabled=false;
[Link]('btn4').disabled=false;
}
</script> </body> </html>
Ce nombre ne nous sert vraiment qu'à peu de choses à nous, développeurs, car nous allons utiliser
l'objet Date qui va s'occuper de faire tous les calculs nécessaires pour obtenir la date ou l'heure à
partir de n'importe quel timestamp.
L'objet Date ?
L'objet Date nous fournit un grand nombre de méthodes pour lire ou écrire une date.
Le constructeur : Commençons par le constructeur ! Ce dernier prend en paramètre de
nombreux arguments et s'utilise de différentes manières. Voici les quatre manières de l'utiliser :
Les méthodes de l'objet Date: Étant donné que l'objet Date ne possède aucune propriété
standard, nous allons directement nous intéresser à ses méthodes qui sont très nombreuses
<script>
// Exemple d'affichage de gestion d'un timestamp
var myDate = new Date('Sat, 04 May 1991 [Link] GMT+02:00');
//Creation d'un objet date avec timestamp comme argument
alert([Link]()); // Affiche : 4
// Faites attention les mois commencent par 0
alert([Link]()); // Affiche le mois : 4
alert([Link]()); // Affiche le jour : 6
</script>
Tp : Création widget horloge avec javascript
<html>
<head>
<script>
function rafrachir(){
var t = 1000; // rafraîchissement en millisecondes
setTimeout('Affichehorloge()',t)
//setTimeout: déclenche des actions après un intervalle de temps donné
//On doit déclencher Affichehorloge() de nouveau après 1000 ms
//1 Millisecondes = 0.001 Secondes
}
TP (Horloge numérique)
function Affichehorloge()
{var date = new
Date()
//Création de l’objet date
var h = [Link]();
//Extraire l'heure de l'objet date
var m = [Link]();
//Extraire les minutes de l'objet date
var s = [Link]();
//Extraire les secondes de l'objet date
if( h < 10 ){ h = '0' + h; }
if( m < 10 ){ m = '0' + m; }
if( s < 10 ){ s = '0' + s; }
var time = h + ':' + m + ':' + s
[Link]('horloge').innerHTML = time;
//mise à jour du span horloge avec innerHTML
rafrachir();
//appel de la fonction pour le rafraîchissement des variables de nouveau
}
</script>
</head>
<body onload=Affichehorloge();>
<span id='horloge' style="background-color:black
;color:silver;font-size:100px;"></span>
</body>
</html>
innerHTML est une propriété de tout élément HTML qui désigne le contenu qui se trouve entre
la balise entrante et la balise fermante. On l'utilise pour lire pour insérer dynamiquement un
contenu.