Appliquer la notion

Question

Quel est le type de bug présent dans l'exemple suivant (bug dû à une erreur de syntaxe, bug dû à une erreur de logique) ?

Comment corriger le bug ?

1
const i = 2
2
if i % 2 {
3
  console.log(i + ' est impair')
4
}

Solution

C'est un bug de syntaxe : il faut ajouter des parenthèses sur la condition.

1
const i = 2
2
if (i % 2) {
3
  console.log(i + ' est impair')
4
}

Question

Quel est le type de bug présent dans l'exemple suivant (bug dû à une erreur de syntaxe, bug dû à une erreur de logique) ?

Comment corriger le bug ?

1
const i = 1
2
if (i % 2 !== 0) {
3
  console.log(i + ' est pair')
4
}

Solution

Il s'agit d'une erreur de logique. Ici, si on exécute, on obtient :

1
1 est pair

Il faut changer le message :

1
const i = 1
2
if (i % 2 === 0) {
3
  console.log(i + ' est pair')
4
}

Ou bien changer la condition :

1
const i = 1
2
if (i % 2 !== 0) {
3
  console.log(i + ' est impair')
4
}