JS中的进制转换
1 .前言
js的进制转换, 分为2进制,8进制,10进制,16进制之间的相互转换, 我们直接利用 对象.toString()即可实现。
2进制:只包含0、1两位数字,值+1,在最后一位上+1,原位置上是1,则向前进1,以此类推。
8进制:每一位的最大值只能到达7,没有8和9这两数出现,满8就算10,进1。
比如:(十进制)8=>(八进制)10、(十进制)18=>(22)…
10进制:就是日常生活中使用的数字方法。
16进制:一组循环是16个数字,1~9还是照常,10-15则变成a、b、c、d、e、f这6个英文字母代替,满16则写成10。
比如:(十进制)12=>(十六进制)c、十进制(25)=>(19)
2 .代码
有时候,需要转换的数字本身就不是10进制,但是toString()没有办法直接判断出来,所以可先运用parseInt将需要转换的数字转换成10进制
//2进制到10进制;
parseInt(10,2) //=>2
//2进制到10进制;
parseInt(100,2) //=>4
//16进制到10进制
parseInt(12, 16) //=>18
//8进制到10进制
parseInt(12,8); //=>10
parseInt(a,b):参数a代表需要转换的数字(自己的对应的进制的值);参数b代表这个数目前的进制类型。
//10进制转为16进制
parseInt(10).toString(16) // =>"a"
//8进制转为16进制
parseInt(12,8).toString(16) // =>"a"
//16进制转为10进制
parseInt(16,16).toString(10) // =>"22"
//16进制转为8进制
parseInt(16,16).toString(8) // =>"26"
//10进制转为2进制 //=>
parseInt(1111,2).toString(2) // => "10001010111"
//8进制转为2进制 //=>
parseInt(1111,8).toString(2) //=>"1001001001"
//16进制转为2进制 //=>
parseInt(16,16).toString(2) // => "10110"
3 参考
[1] JS中的进制转换以及作用
标签:javascript