当前位置: 移动技术网 > IT编程>开发语言>JavaScript > JavaScript的进制转换

JavaScript的进制转换

2019年09月17日  | 移动技术网IT编程  | 我要评论

先介绍两个api:

一、number 类型的 tostring 方法

语法

numberobject.tostring( [ radix ] )

参数

参数描述
radix 可选/number类型指定的基数(进制数),默认为10。

参数radix支持 [2, 36] 之间的整数。例如:参数值为2,则表示二进制;为8,则表示八进制;为16,则表示十六进制。
如果省略参数radix,则默认为10(十进制)。

返回值

tostring()函数的返回值为string类型,返回该数字指定进制形式的字符串。

 

二、string 转 number 的方法

语法

parseint( numstring [, radix ] )

参数

参数描述
numstring string类型需要转换为整数的字符串。
radix 可选/number类型指定的进制基数。

参数radix可以是一个介于 [2, 36] 之间的数值。例如:参数radix为2,则将numstring视作二进制;参数radix为8,则视作八进制;参数radix为16,则视作十六进制。

 如果没有提供radix参数,则parseint()函数将会根据参数numstring的前缀来决定转换的进制基数。如果numstring的前缀是0x,则转换为十六进制;如果前缀是0,则转换为八进制;其他情况均转换为十进制。

返回值

parseint()函数的返回值为number类型,返回转换后的整数。

如果指定的字符串中包含非数字字符,只要字符串开头的一部分符合整数的转换规则,则parseint()函数会将这一部分字符串转化为整数(从字符串开头,直到遇到非数字字符为止)。如果字符串以非数字字符开头,则返回nan

 

上代码!

数字转2进制

(100).tostring(2)         // "1100100"

数字转8进制

(100).tostring(8)         // "144"

数字转16进制

(100).tostring(16)         // "64"

16进制转10进制

parseint(0x64)            //  100 
parseint('0x64')          //  100
parseint('0x64',16)       //  100    第二参数写了更好,以免迷糊
​
parseint('ff')            //  nan
parseint('ff',16)         //  255   这里没有0x打头,必须要注明要转的基数

8进制转10进制

parseint(0100);           //  64    先转成字符串,再以8进制解析
parseint("0100",8);       //  64    正确写法,无歧义  !!!
​
parseint("0100");         //  100   官方表示不确定:但是测试结果,谷歌浏览器当成10进制输入。所以不建议这样写

2进制转10进制

parseint("11",2);        //返回 3 

 

thanks for watching !

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网