javascript 进制转换
Number 转为不同的进制(二进制、十进制、十六进制、三十六进制)
Number.prototype.toString([radix])
- radix:指定要用于数字到字符串的转换的基数(从2到36)。如果未指定 radix 参数,则默认值为 10。
(888).toString(2); // 1101111000
(888).toString(); // 888
(888).toString(16); // 378
(888).toString(36); // oo
(35).toString(36); // z
Number.MAX_SAFE_INTEGER.toString(2); // 11111111111111111111111111111111111111111111111111111
注意
- Number.prototype.toString 方法覆盖了 String.prototype.toString 方法
- 如果对象是负数,则会保留负号。即使radix是2时也是如此
(-1).toString(2) // -1
(-10).toString(2) // -1010
(-35).toString(36); // -z
ParseInt 字符串转数字
parseInt(string, radix);
- string:要被解析的值。
- 如果字符串
string
以"0x"或者"0X"开头, 则基数是16 (16进制). - 如果字符串
string
以"0"开头, 基数是8(八进制)或者10(十进制),那么具体是哪个基数由实现环境决定。
- 如果字符串
- radix :一个介于2和36之间的整数(数学系统的基础,永远都要明确给出radix参数的值。
parseInt("-F", 16); // -15
parseInt(0XFFF, 10) // 4095
parseInt(111, 2) // 7
parseInt(-111, 2) // -7
二进制,十六进制,三十六进制
- 二进制值类型:0-1
- 十六进制:0-f
- 三十六进制:0-9, a-z