十进制转二进制、八进制、十六进制(js)

进制即进制位,相信接触过程序的人,应该都不陌生。对于数字型的数据,使用十进制是比较常用的,都说除了十进制,还有二进制、八进制、十六进制等等,那么这些进制有什么区别呢?区别在于数运算时是逢几进一位。比如二进制逢2进一位。


由于有些API的参数可能会用上十六进制或者八进制的值,所以就写一下所需要的十进制转换函数,仅支持js。像二进制转换其它进制位的所需毕竟比较少,但十进制转其它进制位的所需还是有的。

十进制转换

function switch_sl(num,system){
     // 十进制转其它进制,仅支持到二进制/八进制/十六进制
     var shiliu=[
         '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'
         , 'A', 'B', 'C', 'D', 'E', 'F', 'G'],sl_arr=[];
     do{
         var fl_sl=Math.floor(num/system);

         var yu_sl=num%system;
         sl_arr.unshift(shiliu[yu_sl]);
         num=fl_sl;
     }while(num>0)
     return sl_arr.join('');
 }

使用

 switch_sl(10,2);//二进制:1010
 switch_sl(10,8);//八进制:12
 switch_sl(10,16);//十六进制:A
原文地址:https://www.cnblogs.com/murenziwei/p/14113723.html