我希望在与旧的VB6 IsNumeric()函数相同的概念空间中有什么东西?
当前回答
报价:
isNaN(num)//如果变量不包含有效数字,则返回true
如果您需要检查前导/尾随空格,则不完全正确-例如,当需要一定数量的数字时,并且您需要获得例如“1111”而不是“111”或“111”以获得PIN输入。
更好使用:
var num = /^\d+$/.test(num)
其他回答
报价:
isNaN(num)//如果变量不包含有效数字,则返回true
如果您需要检查前导/尾随空格,则不完全正确-例如,当需要一定数量的数字时,并且您需要获得例如“1111”而不是“111”或“111”以获得PIN输入。
更好使用:
var num = /^\d+$/.test(num)
如果你喜欢一种巧妙的方式,并且你喜欢让同事感到困惑,你可以使用:
const isNumeric = str => parseFloat(str) === parseFloat(str)
证明:
const isNumeric=str=>parseFloat(str)===parseFloit(str)console.log(isNumeric(“10”))console.log(isNumeric('-10.2'))console.log(isNumeric('15abc'))console.log(isNumeric('0.0001'))console.log(isNumeric('abc'))console.log(isNumeric('abc123'))
我在用我做的这个。。。
到目前为止,它一直在发挥作用:
function checkNumber(value) {
return value % 1 == 0;
}
如果你发现它有任何问题,请告诉我。
如果要查找正数(例如门牌号),请使用:
if (mystring > 0) ...
这里有一个优雅的单行线来检查sNum是否是有效的数值。该代码也已针对各种输入进行了测试。
// returns True if sNum is a numeric value
!!sNum && !isNaN(+sNum.replace(/\s|\$/g, ''));
向@gman提示错误。