js json utf-8 转 二进制
时间: 2023-09-14 13:05:05 浏览: 169
js操作二进制数据方法
这个问题有点复杂,因为你需要先将 JSON 数据编码成 UTF-8 字符串,然后再将 UTF-8 字符串转换为二进制数据。
以下是一个示例代码,将 JSON 数据编码成 UTF-8 字符串,然后将 UTF-8 字符串转换为二进制数据:
```javascript
// JSON 数据
const jsonData = {
name: 'John',
age: 30,
hobbies: ['reading', 'coding', 'music']
};
// 编码成 UTF-8 字符串
const jsonString = JSON.stringify(jsonData);
const utf8String = unescape(encodeURIComponent(jsonString));
// 转换为二进制数据
const binaryData = new Uint8Array(utf8String.length);
for (let i = 0; i < utf8String.length; i++) {
binaryData[i] = utf8String.charCodeAt(i);
}
```
在上面的代码中,我们使用了 `JSON.stringify()` 将 JSON 数据转换为字符串,然后使用 `encodeURIComponent()` 将字符串编码成 UTF-8 字符串。接着,我们使用 `Uint8Array` 和 `charCodeAt()` 将 UTF-8 字符串转换为二进制数据。
注意,这里使用了 `unescape()` 函数来解码 UTF-8 字符串,因为 `encodeURIComponent()` 函数会对一些字符进行编码,例如:`#`,`%` 等。
阅读全文