Les conditions

Suivre ce tutoriel sur le javascript.

Lorsque l'on souhaite écrire des algorithmes il est important d'être capable de tester si une valeur est bien celle attendue. On va donc découvrir maintenant les conditions. Les conditions s'écrivent de la manière suivante :

1
if (<booleen>) {
2
    <code si vrai>
3
}

Si par exemple on souhaite afficher à l'utilisateur une phrase si un nombre est pair :

1
// % donne le reste de la division de $nombre par 2
2
if (nombre % 2 == 0) {
3
    console.log(`Bravo !`)
4
}

Il est aussi possible de mettre un code à exécuter si la condition n'est pas remplie :

1
if (<booleen>) {
2
    <code si vrai>
3
} else {
4
    <code si faux>
5
}

Enfin on est parfois amené à utiliser des conditions multiples :

1
if (<booleen>) {
2
    <code si vrai>
3
} else if (<booleen>) {
4
    <code>
5
} else {
6
    <code>
7
}

Opérateur de comparaison

Parfois on souhaitera tester si une variable est bien celle attendue, ou faire une condition plus complexe. Dans ce cas là il faudra utiliser les opérateurs de comparaison

1
2
a == b // a égale à b
3
a === b // a == b et a est de même "type" que b
4
a >= b // a supérieur OU égal à b
5
a > b   // a strictement supérieur à b
6
a <= b // a inférieur OU égal à b
7
a < b   // a strictement inférieur à b
8
a != b // a est différent de b
9
a !== b // a est strictement différent de b
10

On essaiera tant que possible d'éviter les == et != car ces comparaisons se basent sur une conversion implicite des types qui peut être surprenante.

1
2
'1' == 1 // true
3
'1' === 1 // false

Attention aussi lorsque l'on compare des objets, ils ne sont pas considérés comme égaux même si leurs propriétés sont identiques.

1
{a: 1} == {a: 1} // false
2
{} == {} // false
3
[] == [] // false
4
NaN == NaN // false

On pourra aussi utiliser les opérateurs booléens, qui nous permettront de combiner plusieurs conditions ensembles

1
/ && ET
2
true && true // true
3
true && false // false
4
false && true // false
5
false && false // false
6
7
// || OU
8
true || true // true
9
true || false // true
10
false || true // true
11
false || false // false
12
13
// ! NON
14
!true // false
15
!false // true

Le switch / case

Le switch case permet d'effectuer une opération suivant la valeur que prendra une expression.

1
switch (expression) {
2
  case valeur1:
3
    // Instructions à exécuter lorsque le résultat
4
    // de l'expression correspond à valeur1
5
    instructions1
6
    break
7
  case valeur2:
8
    // Instructions à exécuter lorsque le résultat
9
    // de l'expression correspond à valeur2
10
    break
11
  default:
12
    // Instructions à exécuter lorsqu'aucune des valeurs
13
    // ne correspond 
14
    break
15
}

C'est une notation qui est plus spécifique que les conditions avec les if et else mais qui peut s'avérer plus simple à écrire dans certains cas spécifiques

Le ternaire

Le ternaire, ou opérateur conditionnel est un outil qui permet de racourcir une condition en une seule ligne

1
const age = 19
2
const phrase = "Je suis " + (age >= 18 ? "majeur" : "mineur")

Ex 01 : Système de recommandation

Question

Créer un système de recommandation qui conseille le bon film en fonction de l'âge de l'utilisateur

  • Si l'utilisateur a moins de 13 ans (13 ans inclu) on lui affichera "Lilo & Stitch"

  • Si l'utilisateur a plus de 13 ans et moins de 18 ans (strictement) on lui affichera "Matrix" (je sais c'est un peu jeune)

  • Si l'utilisateur a plus de 18 ans on lui affichera "Evil Dead"

On commencera avec le code suivant :

1
const currentYear = 2025
2
const birthyear = prompt('Quel est votre année de naissance ?')
3
// Ecrire votre code ici, afficher le film à l'aide de console.log('votre réponse')

Ex 02 : Multiplication

Question

On souhaite créer une calculatrice simplifiée qui est capable de multiplier 2 nombres et de nous donner le signe du résultat. L'objectif est d'afficher nombre1 x nombre2 = resultat est positif

On commencera avec la base suivante

1
const a = prompt('Entrez un premier nombre')
2
const b = prompt('Entrez un second nombre')

Ex 03 : Conversion dollar Euros

Question

Sachant qu'un dollar US vaut 0,88 Euros. A l'aide du prompt l'utilisateur saisie une valeur en dollar et le prompt affiche ça valeur en Euros.