如何检查字符串是否包含JavaScript中的数字?

dro*_*nus 4 javascript types

我不清楚在JavaScript中识别包含其他字符串数字的字符串是多么困难.

Number('')评估0,虽然''绝对不是人类的数字.

parseFloat 强制执行数字,但允许它们被abitrary文本拖尾.

isNaN 对于空格字符串,求值为false.

那么什么是编程函数来检查字符串是否是一个数字,根据一个简单而合理的定义是什么数字?

小智 7

通过使用以下函数,我们可以测试javascript字符串是否包含数字.在t的上述函数中,我们需要将我们的javascript字符串作为参数传递,然后该函数将返回true或false

function hasNumbers(t)
{
var regex = /\d/g;
return regex.test(t);
}    
Run Code Online (Sandbox Code Playgroud)


Den*_*ret 2

有一个简单的解决方案:

var ok = parseFloat(s)==s;
Run Code Online (Sandbox Code Playgroud)

如果您需要考虑"2 "不是一个数字,那么您可以使用这个:

var ok = !!(+s==s && s.length && s.trim()==s);
Run Code Online (Sandbox Code Playgroud)