欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JavaScript的进制转换

程序员文章站 2022-08-11 21:47:11
先介绍两个API: 一、number 类型的 toString 方法 语法 JavaScript: numberObject.toString( [ radix ] ) JavaScript: JavaScript: 参数 参数radix支持 [2, 36] 之间的整数。例如:参数值为2,则表示二进 ......

先介绍两个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 !