JS 全局函数 isNaN()、parseInt()、parseFloat()

目录

isNaN() 检查是否是非数值

parseFloat() 解析字符串为浮点数

parseInt() 解析字符串为整数


isNaN() 检查是否是非数值

1、isNaN() 全局函数用于检查其参数是否是非数字值。

2、语法:isNaN(x)

参数 描述
x 必需。要检测的值。

3、返回值:如果 x 是特殊的非数字值 NaN(或者能被转换为这样的值),返回的值就是 true。如果 x 是其他值,则返回 false。

4、说明:isNaN() 函数可用于判断其参数是否是 NaN,该值表示一个非法的数字(比如被 0 除后得到的结果)。

5、提示:如果把 NaN 与任何值(包括其自身)相比得到的结果均是 false,所以要判断某个值是否是 NaN,不能使用 == 或 === 运算符,正因为如此,isNaN() 函数是必需的。

6、提示:isNaN() 函数通常用于检测 parseFloat() 和 parseInt() 的结果,以判断它们表示的是否是合法的数字。当然也可以用 isNaN() 函数来检测算数错误,比如用 0 作除数的情况。

    

parseFloat() 解析字符串为浮点数

1、parseFloat() 全局函数可解析一个字符串,并返回一个浮点数。

2、该函数指定字符串中的首个字符是否是数字,如果是,则对字符串进行解析,直到数字的末端为止,然后以数字返回该数字,而不是作为字符串。

3、语法:parseFloat(string)

参数 描述
string 必需。要被解析的字符串。

4、parseFloat 是全局函数,不属于任何对象。

5、parseFloat 将它的字符串参数解析成为浮点数并返回。如果在解析过程中遇到了正负号(+ 或 -)、数字 (0-9)、小数点,或者科学记数法中的指数(e 或 E)以外的字符,则它会忽略该字符以及之后的所有字符,返回当前已经解析到的浮点数。同时参数字符串首位的空白符会被忽略。

6、如果参数字符串的第一个字符不能被解析成为数字,则 parseFloat 返回 NaN。

7、提示:可以通过调用 isNaN 函数来判断 parseFloat 的返回结果是否是 NaN。因为如果让 NaN 作为了任意数学运算的操作数,则运算结果必定也是 NaN。

8、提示:如果只想解析数字的整数部分,请使用 《parseInt() 全局函数将字符串解析为整数》

    

parseInt() 解析字符串为整数

1、parseInt() 全局函数可解析一个字符串,并返回一个整数。

2、语法:parseInt(string, radix)

参数 描述
string 必需。要被解析的字符串。
radix

可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。

如果省略该参数或其值为 0,则数字将以 10 为基础来解析。如果它以 “0x” 或 “0X” 开头,将以 16 为基数。

如果该参数小于 2 或者大于 36,则 parseInt() 将返回 NaN。

2、当参数 radix 的值为 0,或没有设置该参数时,parseInt() 会根据 string 来判断数字的基数。

3、举例,如果 string 以 "0x" 开头,parseInt() 会把 string 的其余部分解析为十六进制的整数。如果 string 以 0 开头,那么 ECMAScript v3 允许 parseInt() 的一个实现把其后的字符解析为八进制或十六进制的数字。如果 string 以 1 ~ 9 的数字开头,parseInt() 将把它解析为十进制的整数。

4、提示:只有字符串中的第一个数字会被返回。开头和结尾的空格是允许的。如果字符串的第一个字符不能被转换为数字,那么 parseInt() 会返回 NaN。

 

 

你可能感兴趣的:(JavaScript)