And*_*ius 1 javascript jquery integer
我怎样才能简单地检查字符串是否可以转换为整数?
我的意思是只有整数,所以字符串'10.1'就不会被转换为10.
例如,如果我这样做:
parseInt('10.1', 10)
Run Code Online (Sandbox Code Playgroud)
它返回10
是否有类似于Python的东西,所以我不需要做很多检查?
在Python中如果我这样做int('10.1'),它会给我错误,但如果string实际上是整数,那么它只允许你转换它int('10').因此,即使不使用正则表达式或一些额外的检查,也很容易检查.
我试过这个:
function isInteger (value) {
if ($.isNumeric(value) && Number(value) % 1 === 0){
return true;
} else {
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
它有点工作,但如果我写的例子10.,它将返回true,因为Number转换为10.我想我需要使用正则表达式检查这样的事情?
PS我搜索了这个问题,但所有答案似乎都很模糊,实际上并没有回答如何正确检查整数(不仅仅是数字).
一种可能性是使用正则表达式进行测试,如下所示:
function isInteger(value) {
return /^\d+$/.test(value);
}
Run Code Online (Sandbox Code Playgroud)
如果我正确理解你的问题那么应该这样做:
function isInteger(value) {
if(parseInt(value,10).toString()===value) {
return true
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
它将字符串转换为整数,然后再转换回字符串,并将其与原始字符串进行比较。如果匹配,则返回 true,否则返回 false。
| 归档时间: |
|
| 查看次数: |
2991 次 |
| 最近记录: |