在 Javascript 中检查变量是否为整数

use*_*143 0 javascript parseint

我开始在学校学习 JavaScript,其中一项作业要求我检查用户的输入是否为整数。

此代码在 Chrome 上不适用于我

var person = prompt("Please enter your name", "Enter Name");
alert("Hello " + person);
var age = prompt("Please enter your age", "Enter age");

if (age == parseInt(age, 10))
    alert("data is integer")
else
    alert("data is not an integer")
Run Code Online (Sandbox Code Playgroud)

无论我在提示框中输入字符串还是整数,它总是显示“数据不是整数”消息。

Kyl*_*leK 10

提示将始终返回一个字符串,因此在您的情况下:

var integerAge = parseInt(age);

if(!isNaN(integerAge) && age === '' + integerAge)
    alert("data is integer")
else
    alert("data is not an integer")
Run Code Online (Sandbox Code Playgroud)

对于年龄,您可能还会integerAge >= 0在下一个验证步骤中检查它是否是一个具有某些或自定义最小值和最大值的正整数。

  • == 不检查变量的类型,它应该具有相同的行为 (2认同)