My program always outpout test which should not happen. Its like the program is skipping the case to go to default right away. I don’t understand why it does that. I’ve spent 30 mins to find a solution but I can’t understand why it does that.
Thanks for helping me !
var ani; let ans; let prix; var total; var arm1; var arm2; let nombrearmure; nombrearmure = 0; ani = prompt("Entrez votre type d'animal : "); switch (ani.toLowerCase) { case 'c' : ans = prompt('Voulez vous acheter une épée pour 100$ ? : '); if (ans.toLowerCase() === 'o'){ prix = 100; nombrearmure = 1; } else { if (ans.toLowerCase() === 'n') { console.log('Épée refusé'); } else { console.log('Réponse non valide'); } } ans = prompt('Voulez vous acheter une corne de licorne pour 500 $ ? : '); if(ans.toLowerCase() === 'o'){ prix = prix+500; nombrearmure = nombrearmure + 2; } else { if (ans.toLowerCase() === 'n'){ console.log('Corne de licorne refusé'); } else { console.log('Réponse invalide'); } } break; case 'l' : ans = prompt('Voulez vous acheter un casque(100-200$) : '); if (ans.toLowerCase() === 'o'){ ans = parseInt(prompt('Appuyez sur 1 pour un casque noir (100$) ou 2 pour un casque multicolore (200$) : ')); switch(ans){ case 1 : prix = 100; nombrearmure = 1; break; case 2 : prix = 200 nombrearmure = 2; break; default : console.log('Réponse invalide') return 1; } } else { if(ans.toLowerCase === 'n'){ console.log('Casque refusé'); } else { } } default: console.log('test'); }
Advertisement
Answer
You are doing ani.toLowerCase
. It should be ani.toLowerCase()
. Also remove the return 1.