使用JavaScript进行进制转换将字符串转换为十进制

JS 是一个很神奇的语言,内制的的很多函数可以帮我们进行数(进)制转换;

JS中可以直接使用16进制;

var a = 0xff; //255

将任意进制字符串转换为十进制,如二进制,八进制,十六进制, 第二数数不写即为最常用的转换为整型十进制;

代码如下:

parseInt("11", 2); // 3 2进制转10进制 
parseInt("77", 8); // 63 8进制转10进制
parseInt("af", 16); //175 16进制转10进制


将10进制转换为2进制,八进制,十六进制字符串
Object.toString(n) : 即可 (n) 表示进制,如

代码如下:

(152).toString(2) // "10011000" ; 先用括号将152转换“包”成一个对象, 或者如下写法;
152..toString(2) // 这里第一个点将152转换成float类型的小数,第二个点是引出对象方法;
152..toString(16) // "98" : 十进制转16进制
152..toString(32) // "4o" :十提制转32进制

同样Javascript支持最大进制是36 (26个英文字母 + 10个数字)

35..toString(36) // "z" : 支持最大编码"Z", 不区分大小写

如果在转换的过程中需要补齐的。可以使用下面的方式:

代码如下:

/** 
* @param num 需要补齐的16为数字 
* @param len 要补齐到的位数 这里是 
* @returns 补齐后的字符串 
* */ 
function format(num, len) { 
var l = num.length; 
if (num.length < len) { 
for (var i = 0; i < len - l; i++) { 
num = "0" + num; 
} 
} 
return num; 
}
原文地址:https://www.cnblogs.com/mafeng/p/6800397.html