JavaScript 中,如何将字符串中的汉字转换为字节码(UTF-8)表示形式?
时间: 2024-11-05 12:31:26 浏览: 19
js实现unicode码字符串与utf8字节数据互转详解
在JavaScript中,可以使用`encodeURIComponent`函数对包含汉字的字符串进行编码,将其转换成URL安全的UTF-8格式的字节码序列。这个函数会把非字母数字字符替换为相应的%XX编码,其中XX是对应字符的16进制值。
下面是一个例子:
```javascript
let str = "你好";
let encodedStr = encodeURIComponent(str);
console.log(encodedStr); // 输出:"%E4%BD%A0%E5%A5%BD"
// 要还原到原始的字节码,可以使用`decodeURIComponent`,但这通常用于解码URL而不是直接获取UTF-8字节码
let decodedStr = decodeURIComponent(encodedStr);
console.log(decodedStr); // 输出:"你好"
```
如果你想得到更底层的字节码数组,可以先将字符串转换为Blob对象,然后通过FileReader读取其二进制数据:
```javascript
let str = "你好";
let blob = new Blob([str], {type: 'text/plain;charset=utf-8'});
let reader = new FileReader();
reader.readAsArrayBuffer(blob);
reader.onload = function() {
let bytes = reader.result; // 这里就是字节码
};
```
阅读全文