js对十六进制字符串如何解码
时间: 2023-12-29 09:06:01 浏览: 200
JavaScript提供了两个内置函数用于解码十六进制字符串:`parseInt()`和`decodeURIComponent()`。
1. 使用`parseInt()`函数解码:
```javascript
let hexString = "48656c6c6f20576f726c64"; // 十六进制字符串
let decodedString = "";
for (let i = 0; i < hexString.length; i += 2) {
decodedString += String.fromCharCode(parseInt(hexString.substr(i, 2), 16));
}
console.log(decodedString); // 输出:Hello World
```
2. 使用`decodeURIComponent()`函数解码:
```javascript
let hexString = "48656c6c6f20576f726c64"; // 十六进制字符串
let decodedString = decodeURIComponent(hexString.replace(/(..)/g, '%$1'));
console.log(decodedString); // 输出:Hello World
```
注意,使用`parseInt()`函数解码时,需要将十六进制字符串拆分成两个字符一组,并使用`parseInt()`函数将其转换为十进制数,再使用`String.fromCharCode()`函数将十进制数转换为字符。使用`decodeURIComponent()`函数解码时,需要使用正则表达式将十六进制字符串转换为URI编码格式,然后再使用`decodeURIComponent()`函数进行解码。
阅读全文