您的位置:首页 > Web前端 > JavaScript

javascript中parseInt()函数的定义和用法分析

2014-12-20 00:00 483 查看
本文实例讲述了javascript中parseInt()函数的定义和用法。分享给大家供大家参考。具体分析如下:

此函数可以解析一个字符串,并返回一个整数。

语法结构:

parseInt(string, type)

参数列表:


参数
描述




string
必需。要被解析的字符串。




type
可选。表示要解析的数字的基数,通俗的说就是数字的进制,比如二进制、八进制或者十六进制。该值介于2 ~ 36之间。



详细说明:

一.指定type参数:

指定type参数后,函数就会按照指定的type参数对字符串进行解析,例如:

1.parseInt("010",10),表示"010"是十进制,返回值就是10。

2.parseInt("010",2),表示"010"是二进制,返回值就是2。

3.parseInt("010",8),表示"010"是八进制,返回值是8。

4.parseInt("010",16),表示"010"是十六进制,返回值是16。

说明:返回值都是十进制,type说指定是第一个参数的进制,并且第二个参数值的返回是介于2-36之间,如果不在此区间,parseInt函数返回值为NaN。如果string参数中,并非都是数字,而是带有其他字符,则parseInt函数只返回第一个字符之前的数字。例如:

parseInt("123ab789",10)返回值是123,第一个字符a之后的全部省略。
二.不指定type参数:

当不指定type参数的时候,parseInt函数会自动判断是何种进制,在通常情况下是十进制,例如:

1.parseInt("23")返回值是23。

2.parseInt("23ab")返回值是23。
但是情况往往并非都是向上面那么简单,再来看个例子:

parseInt("0x12")返回值是18,并非按照返回第一个字符串之前的数字,这里就出现一种情况,如果字符串是以"0x"开头的就要注意了,因为这个时候"0x"后面的数字会被认为是十六进制,所以返回值是18。如果是以"0"开头,并且后面紧邻的不是字符,那么这个时候,在谷歌浏览器下会被以十进制解析,但是在IE浏览器下被以八进制解析。例如:

parseInt("0123")在谷歌浏览器下返回值是123,在IE浏览器下返回值是83。
希望本文所述对大家的javascript程序设计有所帮助。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: