Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.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-检查输入是否为数字_Javascript_Validation - Fatal编程技术网

JavaScript-检查输入是否为数字

JavaScript-检查输入是否为数字,javascript,validation,Javascript,Validation,我面临以下(基本)问题:我想检查来自HTML输入字段的输入是否不大于5或不是数字。如果给定此值,函数应返回true。否则(如果大于5或一个数字),它应该重新返回false。到目前为止,如果数字不大于5,则验证工作正常,但当我添加参数类型时,这一项不工作。 这是我到目前为止的代码,提前谢谢 function isValidStart(start) { if (start.trim().length > 5 || typeof(start) === 'number') { return

我面临以下(基本)问题:我想检查来自HTML输入字段的输入是否不大于5或不是数字。如果给定此值,函数应返回true。否则(如果大于5或一个数字),它应该重新返回false。到目前为止,如果数字不大于5,则验证工作正常,但当我添加参数类型时,这一项不工作。 这是我到目前为止的代码,提前谢谢

function isValidStart(start) {
if (start.trim().length > 5 || typeof(start) === 'number') {
   return false
 }
 return true

元素。值
(输入、选择、文本区域等)将始终是字符串

测试是否使用了一个位数的整数范围,可以用一个小的正则表达式和

测试长度为5的整数
const isValidStart=v=>/^\d{1,5}$/.test(v);//或使用[0-5]
console.log(isValidStart(“1”)//true
log(isValidStart(“55555”)//true
console.log(isValidStart(2))//true

console.log(isValidStart(“a12”)//false
您可以使用
Number.isFinite()
函数来检查变量是否为有限数,在您的用例中,它应该完成这项工作

let intVar = 2;
Number.isFinite(intVar);
$true
但是,看起来您的
start
变量实际上不是一个数字,因为您不能对数字调用
.trim()
。所以这个if语句永远不会返回True


你应该输入你的变量

1)HTML输入返回字符串值。2) 数字没有
trim
方法。因此,第二个条件永远不会为真3)您是否检查了
start.trim()
start.trim().length
的值?它检查字符串的长度是否大于5。请调试您的代码。查看parseInt()和isNaN()(offtopic)不要使用
typeof(start)
-而是
typeof start
他说数字
不应该是字符串,您正在检查string@AhmadHabib我想他的意思是:字符串不应该是字母,只应该是数字。不,他的问题是无效的。
let reg = new RegExp(/^\d{0,5}$/);
    console.log(reg.test('1'));
    console.log(reg.test('12'));
    console.log(reg.test('123'));
    console.log(reg.test('1234'));
    console.log(reg.test('12345'));
    console.log(reg.test('string'));
    console.log(reg.test('124var123'));