Développement web

Cours 12

JavaScript

Conditions

Les conditions permettent d'accomplir une instruction seulement si la condition spécifiée est vrai

Exemples

  • Le joueur veut accélerer.
    Est-ce qu'il a du carburant ?
  • Le visiteur veut continuer d'écrire.
    Est-ce qu'il reste assez de place dans le champs ?
  • Le visiteur veut acheter de l'alcool.
    Est-ce qu'il est majeur et est-ce que le produit est dispo ?
  • Le joueur veut tirer.
    Est-ce qu'il lui reste des munitions ?

Nous allons utiliser if et else

If va pemettre de tester une condition et d'accomplir l'instruction si cette condition est vraie


const roadOpen = true

if(roadOpen == true)
{
    console.log('En avant !')
}
                        

⚠️ == permet de tester l'égalité alors que = correspond à une assignation

Si nous avions voulu tester l'inverse, il aurait fallu écrire !=


const roadOpen = false

if(roadOpen != true)
{
    console.log('Stop !')
}
                        

Nous pouvons tester si la condition est vrai ou fausse en même temps à l'aide du else


const roadOpen = false

if(roadOpen == true)
{
    console.log('En avant !')
}
else
{
    console.log('Stop !')
}
                        

S'il n'y a qu'une seule instruction dans le if ou dans le else, on peut retirer les accolades


const roadOpen = false

if(roadOpen == true)
    console.log('En avant !')
else
    console.log('Stop !')
                        

Si on teste qu'une valeur est vraie, il est inutile de préciser == true


const roadOpen = false

if(roadOpen)
    console.log('En avant !')
                        

Pour tester qu'une valeur est fausse, il suffit de l'inverser en la précédent par un !


const roadOpen = false

if(!roadOpen)
    console.log('Stop !')
                        

Il est possible de tester des nombres


const age = 20

if(age >= 18)
    console.log('Vous êtes majeur')
else
    console.log('Vous êtes mineur')
                        
  • > supérieur
  • < inférieur
  • >= supérieur ou égal
  • <= inférieur ou égal

Il est possible de combiner plusieurs tests avec &&


const age = 12
const barOpen = true

if(age >= 18 && barOpen)
    console.log('Vous pouvez acheter de l\'alcool')
else
    console.log('Vous ne pouvez pas acheter de l\'alcool')
                        

Ici, age doit être supérieur ou égal à 18
ET
barOpen doit être vrai

Mais aussi avec || (double pipe)


const age = 12
const barOpen = true
const accompaniedByAdult = true

if((age >= 18 || accompaniedByAdult) && barOpen)
    console.log('Vous pouvez acheter de l\'alcool')
else
    console.log('Vous ne pouvez pas acheter de l\'alcool')
                        

Ici, age doit être supérieur ou égal à 18
OU
l'utilisateur est accompagné d'un adulte
ET
barOpen doit être vrai

☝️ comme pour une opération mathétique, nous avons ajouté des parenthèses afin de rassembler les conditions