1
do {
    var y = prompt("Enter a positive integer from 1 to 26");
    var int = Number.isInteger(y);
    var x = parseInt(y);
    window.alert(int);
} while (x > 26 || x < 1 || int == false)

this is the code I wrote but it still keeps alerting int as false whenever I enter an integer on my browser.

user3840170
  • 26,597
  • 4
  • 30
  • 62

2 Answers2

5

Number.isInteger() is used to tell if a value that's already a number is an integer.

I.e.

Number.isInteger(5) == true
Number.isInteger(5.1) == false

Passing a string into Number.isInteger() will always return false.

Gus Lindell
  • 246
  • 1
  • 5
0

Because prompt() always returns a string. It is up to you to make it integer:

let y = prompt("Enter a positive integer from 1 to 26");
y = parseInt(y);
if (y === NaN) {
    alert('Please enter a number');
} else {
    while(x > 26 || x < 1 || int == false)
}
Vadim
  • 1,125
  • 8
  • 18