Utiliser les objets fournis par JavaScript pour manipuler des dates, faire des calculs et des tirages au hasard, vérifier un format avec une expression régulière, et convertir des données en JSON.
1Situer
Une auto-école de Fès prépare une page pour ses candidats : la date de l'examen et le nombre de jours restants, un quiz qui tire des questions au hasard, la vérification du numéro de téléphone, et l'enregistrement des réponses sous forme de texte. JavaScript fournit déjà des objets pour tout cela.
2Comprendre
JSON : plier un objet en texte, et le déplier
En mémoire, reponses est un objet JavaScript : on peut lire reponses.bonnes.
1 / 5
Date
const maintenant =newDate(); // date et heure actuellesconst examen =newDate(2027, 2, 15); // 15 mars 2027 (mois de 0 à 11)
examen.getFullYear() // 2027
examen.getMonth() // 2 (mars)
examen.getDate() // 15 (jour du mois)
examen.getDay() // 1 (lundi ; 0 = dimanche)
examen.toLocaleDateString('fr-MA') // "15/03/2027"
examen - maintenant // différence en millisecondes
Math
Méthode
Résultat
Math.round(4.5)
5 (arrondi)
Math.floor(4.9) / Math.ceil(4.1)
4 / 5
Math.max(...notes) / Math.min(...)
le plus grand / le plus petit
Math.random()
entre 0 et 1
Math.sqrt(16), Math.pow(2, 3), Math.abs(-3)
4, 8, 3
Math.PI
3.14159…
Les trois points ...notes « étalent » le tableau en plusieurs arguments.
Les expressions régulières (RegExp)
Une expression régulière décrit un format de texte.
const motif =/^0[67][0-9]{8}$/; // 06 ou 07, puis 8 chiffres
motif.test('0612345678') // true'Fès, Rabat'.replace(/,\s*/, ' et ') // "Fès et Rabat"
Symbole
Sens
^ / $
début / fin du texte
[0-9], \d
un chiffre
[a-z]
une lettre minuscule
{8}, {2,}
exactement 8 fois, au moins 2 fois
+, *, ?
1 ou plus, 0 ou plus, 0 ou 1
i (après le /)
sans tenir compte des majuscules
JSON
JSON (JavaScript Object Notation) est un format texte pour échanger des données : clés entre guillemets doubles, pas de fonctions ni de commentaires.
JSON.stringify(objet) // objet → texte (pour envoyer ou enregistrer)JSON.parse(texte) // texte → objet (pour lire ce qu'on reçoit)
C’est le format des API (partie E) et celui qu’on range dans localStorage.
Exemple simple
Le calendrier et la calculatrice déjà fournis
Pas besoin de fabriquer un calendrier ou une calculatrice scientifique : Date et Math sont livrés avec JavaScript, comme l'horloge et la calculatrice de votre téléphone.
new Date().getFullYear(); // l'année en cours
Math.round(4.6); // 5
Math.floor(Math.random() * 6) + 1; // un dé : 1 à 6
Exemple simple
La valise pour voyager
Pour envoyer un objet au serveur ou le garder dans le navigateur, on le plie en texte (JSON.stringify), comme des habits dans une valise ; à l'arrivée, on le déplie (JSON.parse).