Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
验证JavaScript中的Int值_Javascript_Validation - Fatal编程技术网

验证JavaScript中的Int值

验证JavaScript中的Int值,javascript,validation,Javascript,Validation,我试图找出如何确保用户使用JavaScript在文本字段中输入int。目前,我有以下几点: var myVal = $("#myField").val(); if (isInt(myVal)) { alert("Awesome!"); } else { alert("No Good"); } function isInt(i) { if ((i != null) && (i != undefined) && (i.length > 0)) {

我试图找出如何确保用户使用JavaScript在文本字段中输入int。目前,我有以下几点:

var myVal = $("#myField").val();
if (isInt(myVal)) {
  alert("Awesome!");
} else {
 alert("No Good");
}

function isInt(i) {
    if ((i != null) && (i != undefined) && (i.length > 0)) {
        alert(typeof i);
        return (typeof i == 'number' && /^-?\d+$/.test(i + ''));
    }
    return false;
}

如果我在文本字段中输入123,我注意到I的类型是string。我不确定如何执行这种验证。有人能告诉我吗?当我在谷歌上搜索这个时,我很惊讶我没有成功。

你可以简单地使用它!isNaN+myVal或!isNaNparseIntmyVal,10

您可以简单地使用!isNaN+myVal或!isNaNparseIntmyVal,10

这里有一个简短而甜蜜的方法

function isInt(n) {
    return !isNaN(parseFloat(n)) && isFinite(n);
}

这里有一个简短而甜蜜的方法

function isInt(n) {
    return !isNaN(parseFloat(n)) && isFinite(n);
}

如果对非整数或字符串使用模运算符

返回余数或NaN

function isInt(i) {
   return i%1===0;
}

如果对非整数或字符串使用模运算符

返回余数或NaN

function isInt(i) {
   return i%1===0;
}

这也将接受十六进制数。使用parseIntmyVal,10代替。什么时候零和负数不是数字了p这也将接受十六进制数。使用parseIntmyVal,10代替。什么时候零和负数不是数字了如果不喜欢使用一元数+将其转换为数字,则可以始终使用parseInt:此外,myVal==~~ myVal应适用于最多31位的整数,也可能是32位;我不记得了。取决于用户需要什么。如果能够将它转换成一个数字就足够了,那么它是正确的。没有提到转换。如果您不喜欢使用一元+将其转换为数字,则始终可以使用parseInt:此外,myVal==~~ myVal应适用于31位或32位的整数;我不记得了。取决于用户需要什么。如果能够将它转换成一个数字就足够了,那么它是正确的。没有提到任何有关转换的内容。