Problème 'prompt' JS

Le problème exposé dans ce sujet a été résolu.

Bonjour, ce code affiche automatiquement le default de mon switch lorsque ma variable est définie par l’utilisateur avec prompt. En revanche si j’attribut une variable manuellement dans le code (en remplaçant prompt par 2 par exemple), cela fonctionne normalement.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
const note = prompt('Quelle note, sur cinq, as-tu obtenue?');

switch (note) {

  case 0:
    alert("Tu t'es endormi?");
    break;

  case 1:  
    alert("C'est nul!");
    break;

  case 2:  
    alert("No comment.");
    break;

  case 3:
    alert("Mouais");
    break;

  case 4:
    alert("Elle est où ton erreur?");
    break;

  case 5:
    alert("Oui bon ça va!");
    break;

  default:
    confirm("Reçois des tonnes de publicités et un gros virus gratuitement en appuyant sur OK!"); 
}

Un petit coup de pouce ne serez pas de refus! :-)

Merci!

Édit. de Aabu : Ajout du tag javascript.

+0 -0

Prompt te retourne une chaîne de caractère. Du coup avant de faire un switch dessus tu doit déjà vérifier que la chaîne de caractère est bien un nombre et que tu la convertisse également en nombre.

Tu peux faire ceci:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
let note;

do {
  note = prompt('Quelle note, sur cinq, as-tu obtenue?');
} while(isNaN(note));

const noteNum = parseInt(note);

switch (noteNum) {

  case 0:
    alert("Tu t'es endormi?");
    break;

  case 1:  
    alert("C'est nul!");
    break;

  case 2:  
    alert("No comment.");
    break;

  case 3:
    alert("Mouais");
    break;

  case 4:
    alert("Elle est où ton erreur?");
    break;

  case 5:
    alert("Oui bon ça va!");
    break;

  default:
    confirm("Reçois des tonnes de publicités et un gros virus gratuitement en appuyant sur OK!"); 
}
+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte