对于javascript,想把十进制输出为其他的进制很简单,因为javascript有内置的转化函数。比如:
var a=13;
var b=a.toString(2);
那么b就是a的二进制输出。
因此只需要在toString()里的参数设为2,8,16等就可以输出不同的进制表示了。
那么,反过来呢。比如,把一个二进制数字用数组表示,var a=[1,1,0,0,1,0,0,0,1]
那么如何实现呢?
function toTen(x,arr){
var sum=0;
var len=arr.length;
for(var i=0;i<len;i++){
sum=sum+arr[i]*Math.pow(x,len-1-i);
}
return sum;
}
其中参数x表示几进制,arr是要转换成十进制的数的数组表示。
举例子;var a=toTen(8,[2,3,4,0]).你自己运行试下吧。