十进制转其他进制
toString 方法可以传入一个2到36之间的整数,表示需要把数字转化成几进制。如下:
// 10进制转2进制
(255).toString(2) // "11111111"
// 10进制转8进制
(255).toString(8) // "377"
// 10进制转16进制
(255).toString(16) // "ff"
其他进制转十进制
parseInt 方法的第二个参数可以传入一个2到36之间的整数,表示要把几进制的数字转化成十进制。如下:
// 2进制转10进制
parseInt("11111111", 2) // 255
// 8进制转10进制
parseInt("377", 8) // 255
// 16进制转10进制
parseInt("ff", 16) // 255
将其他进制按10进制输出(ES6):
// 2进制输出10进制
console.log(0b11111111) // -> 255
// 8进制输出10进制
console.log(0o377) // -> 255
// 16进制输出10进制
console.log(0xff) // -> 255
其他进制转其他进制
先用 parseInt 转成十进制,再用 toString 转到目标进制。例如:
// 16进制转2进制
parseInt('ff',16).toString(2) // "11111111"