使用jQuery测试字符串是否为整数

6

有什么函数可以测试字符串是否为整数,类似于以下方法:

jQuery.isNumeric()

i want to test an input html element :

<input id='distance' type='text' />

感谢您提前的支持。

@Dan 这不是那个问题的重复。那个问题是关于决定它是 int 还是 float。这个问题只想知道它是否是任何类型的数字。 - Barmar
函数isNumeric()的用例是:http://api.jquery.com/jquery.isnumeric/,但我想知道如何测试它是否为整数。 - Bouraoui KACEM
@Dan 更容易直接询问,而不是尝试搜索你可能不知道如何表达的问题! - Mardoxx
使用isNAN?isNaN(“Hello”)=> true - prakashapkota
@Mardoxx 是的,但他知道如何表达 - 可以在谷歌上搜索“使用Jquery测试字符串是否为整数”。 - Dan
显示剩余3条评论
3个回答

9
感谢您的贡献,我找到了答案:
if(Math.floor($('#distance').val()) == $('#distance').val() && $.isNumeric($('#distance').val()))
 { 
 alert('yes its an int!');
 } 

1
如果它针对输入876ffff654返回警报,那么这是不可能的。这是不正确的。 - Jasmel Pc
@LeaveCover 请给我们提供测试链接。 - Bouraoui KACEM

-1

我使用这个

function IsInteger(n){
    return Number(n) === n && n % 1 === 0;
}

一个代码块本身并不能提供一个好的答案。请添加解释(为什么它解决了问题,哪里出错了等等...) - Louis Barranqueiro
Number(n)返回NaN,因此如果“不是数字”,它将不等于n。 如果是整数,则n%1将返回0。 其他情况表示您有一个浮点数。 - Blake
IsInteger("555445") ===> 结果 = false - Bouraoui KACEM
如果将函数更新为以下内容,则可以用于传递字符串输入。 function IsInteger(n){ return Number(n) == n && n % 1 === 0; }使用"=="而不是"===",因此"555445" == 5554455将返回true。 - J Adam Rogers

-4

它返回“string”而不是“number”,因为输入元素具有属性:type = text。 - Bouraoui KACEM

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接