js实现十六进制字符串转成十六进制字节,例如字符串“18ab”,转成成字节 18 ab
时间: 2024-09-15 13:06:58 浏览: 46
16进制转换成10进制
3星 · 编辑精心推荐
在JavaScript中,你可以通过将十六进制字符串分割成两部分,然后将每个部分转换为字符编码(UTF-16或两个字节),来实现这个转换。UTF-16是一种Unicode编码,对于ASCII字符(如“18”和“ab”),通常占用两个字节。下面是一个简单的例子:
```javascript
function hexStringToBytes(hexStr) {
const bytes = [];
for (let i = 0; i < hexStr.length; i += 2) {
const byteStr = hexStr.substr(i, 2);
bytes.push(parseInt(byteStr, 16));
}
return bytes;
}
// 示例:将 "18ab" 转换成字节数组
const hexStr = "18ab";
const byteArray = hexStringToBytes(hexStr);
console.log(byteArray); // 输出:[24, 171]
```
在这个函数`hexStringToBytes`中,我们每两步提取一个十六进制数,将其转换为十进制整数(即字节值),并添加到结果数组`bytes`中。
阅读全文