在 JavaScript 中,二进制(base-2)、十进制(base-10)和十六进制(base-16)之间的转换是常见的操作。这些转换可以通过内置的方法来完成。本文将详细介绍如何在 JavaScript 中进行这些转换,并提供相关的代码示例。
1. 二进制转十进制
要将二进制字符串转换为十进制数,可以使用 parseInt
函数。parseInt
函数接受两个参数:要转换的字符串和进制基数。
代码示例:
let binaryStr = "1010"; // 二进制字符串
let decimalNum = parseInt(binaryStr, 2); // 将二进制转换为十进制
console.log(decimalNum); // 输出: 10
在这个示例中,parseInt(binaryStr, 2)
将二进制字符串 "1010"
转换为十进制数 10
。其中,2
表示输入字符串是二进制格式。
2. 二进制转十六进制
要将二进制转换为十六进制,可以首先将二进制转换为十进制,然后再将十进制转换为十六进制。
代码示例:
let binaryStr = "1010"; // 二进制字符串
let decimalNum = parseInt(binaryStr, 2); // 二进制转十进制
let hexStr = decimalNum.toString(16); // 十进制转十六进制
console.log(hexStr); // 输出: "a"
在这个示例中,二进制字符串 "1010"
首先被转换为十进制数 10
,然后 10
使用 toString(16)
方法被转换为十六进制字符串 "a"
。
3. 十进制转二进制
要将十进制数转换为二进制字符串,可以使用 toString
方法,并将基数参数设置为 2
。
代码示例:
let decimalNum = 10; // 十进制数
let binaryStr = decimalNum.toString(2); // 十进制转二进制
console.log(binaryStr); // 输出: "1010"
在这个示例中,toString(2)
将十进制数 10
转换为二进制字符串 "1010"
。
4. 十进制转十六进制
将十进制数转换为十六进制字符串与二进制类似,使用 toString
方法,并将基数参数设置为 16
。
代码示例:
let decimalNum = 10; // 十进制数
let hexStr = decimalNum.toString(16); // 十进制转十六进制
console.log(hexStr); // 输出: "a"
在这个示例中,toString(16)
将十进制数 10
转换为十六进制字符串 "a"
。
5. 十六进制转二进制
要将十六进制字符串转换为二进制,可以先将其转换为十进制,然后再转换为二进制。
代码示例:
let hexStr = "a"; // 十六进制字符串
let decimalNum = parseInt(hexStr, 16); // 十六进制转十进制
let binaryStr = decimalNum.toString(2); // 十进制转二进制
console.log(binaryStr); // 输出: "1010"
在这个示例中,十六进制字符串 "a"
首先被转换为十进制数 10
,然后再被转换为二进制字符串 "1010"
。
6. 十六进制转十进制
要将十六进制字符串转换为十进制数,直接使用 parseInt
函数,并将基数设置为 16
。
代码示例:
let hexStr = "a"; // 十六进制字符串
let decimalNum = parseInt(hexStr, 16); // 十六进制转十进制
console.log(decimalNum); // 输出: 10
在这个示例中,parseInt(hexStr, 16)
将十六进制字符串 "a"
转换为十进制数 10
。
7. 综合应用示例
假设你有一个二进制字符串,想要将其转换为十进制和十六进制,并最终输出这些转换结果。
综合示例:
let binaryStr = "110101"; // 二进制字符串
// 二进制转十进制
let decimalNum = parseInt(binaryStr, 2);
console.log(`二进制 ${
binaryStr} 转为十进制: ${
decimalNum}`);
// 二进制转十六进制
let hexStr = decimalNum.toString(16);
console.log(`二进制 ${
binaryStr} 转为十六进制: ${
hexStr}`);
结论
通过以上内容,我们可以看到,在 JavaScript 中,二进制、十进制和十六进制之间的转换是非常简单的。你可以使用内置的 parseInt
和 toString
方法轻松地进行这些转换。这些操作在处理底层数据时非常有用,特别是在需要对数据进行格式转换的情况下。