Can I use – permet de savoir quelles fonctionalités sont supportées
par quels navigateurs
Bases du langage
Déclaration de variables
// Déclaration d'une variable
let maVariable = 12;
Déclaration de variables
// Déclaration d'une variable
let maVariable = 12;
// Réaffectation d'une variable
maVariable = 42;
Déclaration de constantes
// Déclaration d'une constante
const maConstante = 12;
Déclaration de constantes
// Déclaration d'une constante
const maConstante = 12;
maConstante = 42; // Erreur
/*
À noter : si une variable n'est pas réaffectée,
il est préférable de la déclarer en constante
*/
Types de données
>
Opérateurs
Structures de contrôle
Bloc logique et portée des variables
Fonctions
Déclaration de fonctions
Déclaration de fonctions
Scope des variables
Variables locales
Scope des variables
Variables externes
Valeur par défaut
Fonctions fléchés
Tableaux et objets
Tableaux
Itération sur un tableau
Objets
Itération sur un objet
À vous de jouer !
johangirod.com/cours
Exercices / TP
Pour effectuer les exercices, nous utiliserons un REPL (Read-Eval-Print-Loop) qui permet d’écrire du code et de l’exécuter directement.
Le REPL JavaScript le plus répandu est celui de la console de votre navigateur. Pour y accéder, il suffit d’ouvrir le débugueur de votre navigateur (F12) et de cliquer sur l’onglet “Console”. Nous vous conseillons d’utiliser Firefox ou Chrome.
Vous pouvez utiliser un fichier séparé pour faire les exercices et une trace de votre travail, et copier le code dans la console pour l’exécuter.
Exercice 1
Écrire une fonction qui, à partir de la hauteur d’un véhicule saisi par l’utilisateur, retourne la catégorie de tarification d’un véhicule se présentant au péage de l’autoroute :
hauteur inférieure à 2m : “véhicule léger”
hauteur supérieure ou égale à 2m et inférieure à 3m : “véhicule intermédiaire”
hauteur supérieure ou égale à 3m : “poids lourd”
Tester cette fonction avec plusieurs hauteurs de véhicules.
Corrigé
Exercice 2
Écrire un algorithme qui demande à l’utilisateur un nombre compris entre 1 et 10 jusqu’à ce que la réponse convienne.
Vous pourrez utiliser la fonction prompt pour demander à l’utilisateur de saisir un nombre et la fonction alert pour afficher un message à l’utilisateur.
const guess = prompt('Entrez un nombre entre 1 et 10');// ...alert('Bravo !');
Le nombre pourra être determiné aléatoirement à l’aide de la fonction Math.random et de la fonction Math.ceil.
Vous aurez à utiliser la fonction parseInt pour convertir la chaîne de caractères saisie par l’utilisateur en nombre.
Corrigé
Exercice 3
Écrire un programme capable de calculer la factorielle d’un nombre donné par l’utilisateur.
Corrigé
Exercice 4
Écrire une fonction qui prend en paramètre un tableau de nombres et qui retourne la moyenne de ces nombres.
Bonus : utilisez la fonction reduce pour calculer la somme des nombres du tableau.
Écrire une fonction searchColor(query) qui prend en paramètre une chaîne de caractères et qui retourne un tableau contenant les couleurs qui contiennent la chaîne de caractères passée en paramètre.
Vous pourrez utiliser les fonctions filter et includes pour résoudre cet exercice.
Corrigé
Exercice 6
Plutôt que d’ouvrir systématiquement une popup pour chaque affichage nous allons maintenant utiliser la méthode write de l’objet document pour écrire directement dans la fenêtre du navigateur.
Pour commencer, nous allons changer la police d’écriture pour une police monospace. Pour cela, nous allons utiliser la propriété fontFamily de l’objet document.body.style :
document.body.style.fontFamily = 'monospace';
Écrire une fonction qui dessine une ligne d’étoiles * (le nb d’étoiles sera un paramètre).
Écrire une fonction qui dessine un triangle composé d’étoiles, c’est-à-dire une succession de lignes d’étoiles de longueur 1 puis 2 puis 3 et ainsi jusqu’à n. Le passage à la ligne se fera à l’aide de la balise HTML adéquate (<br/>).
Écrire une fonction qui dessine un carré de côté n, le bord de ce carré est composé d’étoiles,
l’intérieur de « - ».
Écrire une fonction qui dessine un losange creux, dont le bord est signifié par des étoiles. Chaque coté de ce losange sera donc dessiné avec n étoiles. Chaque « blanc » sera représenté par un espace non sécable encodé . Par exemple, pour créer une ligne de 4 espace puis une étoile, on écrira : document.write(" ".repeat(4) + "*"); Voici le rendu pour n=4 :