I just learned switch statements. I was practicing it by building something. When i set the value of variable to a number it works but when i asks the user for a number it always outputs the default statement.
It works with this code:
confirm("You want to learn basic counting?"); var i = 0; switch (i) { case 0: console.log(i); i++ case 1: console.log(i); i++; case 2: console.log(i); i++; case 3: console.log(i); i++; case 4: console.log(i); i++; case 5: console.log(i); i++; case 6: console.log(i); i++; case 7: console.log(i); i++; case 8: console.log(i); i++; case 9: console.log(i); i++; case 10: console.log(i); console.log("Congratulations!"); break; default: console.log("Buzz, wronghh"); break; }
But when i asks value from user, it dosen’t work. Code below doesn’t work:
confirm("You want to learn basic counting?"); var i = prompt("Type any number from where you want to start counting[Between 0 and 10]"); switch (i) { case 0: console.log(i); i++ case 1: console.log(i); i++; case 2: console.log(i); i++; case 3: console.log(i); i++; case 4: console.log(i); i++; case 5: console.log(i); i++; case 6: console.log(i); i++; case 7: console.log(i); i++; case 8: console.log(i); i++; case 9: console.log(i); i++; case 10: console.log(i); console.log("Congratulations!"); break; default: console.log("Buzz, wronghh"); break; }
Advertisement
Answer
You need to convert the user input from a string to an integer, like so
confirm("You want to learn basic counting?"); var i = prompt("Type any number from where you want to start counting[Between 0 and 10]"); i = parseInt(i); // this makes it an integer switch(i) { //...