原文链接:http://www.cnblogs.com/mountain-mist/articles/1601001.html
我只是搬运工
开发中有时候会遇到这种情况就是需要将字符串中的数字获取出来使用,以下为解决方法:
以下是不正确的用法:
var str = "123";
if (typeof(str) == "number")
{
alert("是数字");
}
123 虽然可以转化成数字,但这里它毕竟是字符串类型,所以此法不正确。
#-----------------------------------------------------------------------------------------------#
var str = "123";
var n = parseInt(str);
if (!isNaN(n))
{
alert("是数字");
}
parseInt 会将字符串转化成整数,但它会忽略非数字部分而不给任何提示,比如:"ABC123" 会转化成 123,所以此法不正确。
以下是正确的用法:
var str = "123";
var n = Number(str);
if (!isNaN(n))
{
alert("是数字");
}
注意:在 JavaScript 中,对于省略写法(如:".3"、"-.3")、科学计数法(如:"3e7"、"3e-7")、十六进制数(如:"0xFF"、"0x3e7")均被认定为数字格式,这类字符串都可以用 Number 转化成数字。
isNaN 返回一个 Boolean 值,指明提供的值是否是 NaN ,NaN 的意思是 not a number(不是一个数字)。
语法:isNaN(numValue)