base10

问题描述

给定二进制字符串,将其换算成对应的十进制数字

我的笨方案

1
2
3
4
5
6
7
8
9
function base10(str) {
var res = 0;
var tmp = 1;
for(var i=str.length-1;i>=0;i--){
res += str[i]*tmp;
tmp *= 2;
}
return res;
}

更简洁的方案

直接使用parseInt函数,将字符串转换为十进制的整数,需要在后面指定当前字符串为几进制,不指定默认为10

1
2
3
function base10(str) {
return parseInt(str,2);
}