I’m attempting to make the user select certain numbers from a prompt, the empty input returns the alert message but I have no clue how to go about getting an alert message when the user chooses a number that is less than 8 or more than 128. Thank you!
var passwordLength = function () {
//parseInt convert a string into an integer
var charLength = parseInt(prompt("How many characters would you like your password to be? Please choose a number from (8-128)"));
if (!(charLength > 8 || charLength < 128 || charLength === " ")) {
alert("Please choose a number from (0-128)");
return passwordLength();
}
};
Advertisement
Answer
Your conditional is messed up.
It needs to be either
!(charLength > 8 || charLength < 128 || charLength !== "")
or
(charLength < 8 || charLength > 128 || charLength === "")
Note also that, if anything, you’d need to use empty strings, not strings with a space in it. But I see no real reason for that: parseInt will either return a number or NaN, so, as LW001 suggests, you may want to use isNaN instead.