JavaScript的base64
时间: 2023-08-16 08:09:44 浏览: 122
在 JavaScript 中,Base64 是一种用于将二进制数据编码为 ASCII 字符串的编码方式。它可以用于在文本环境中传输或存储二进制数据,例如图片、音频、视频等。
以下是一些常见的使用场景和操作,涉及到 JavaScript 的 Base64 编码和解码:
1. 将字符串或二进制数据转换成 Base64 编码:
- 字符串转换为 Base64 编码:
```javascript
const stringToEncode = 'Hello, World!';
const base64EncodedString = btoa(stringToEncode);
console.log(base64EncodedString); // 输出:SGVsbG8sIFdvcmxkIQ==
```
- 二进制数据转换为 Base64 编码:
```javascript
const binaryData = new Uint8Array([72, 101, 108, 108, 111]); // 'Hello' 的 ASCII 编码
const base64EncodedData = btoa(String.fromCharCode.apply(null, binaryData));
console.log(base64EncodedData); // 输出:SGVsbG8=
```
2. 将 Base64 编码解码为原始数据:
- Base64 编码解码为字符串:
```javascript
const base64EncodedString = 'SGVsbG8sIFdvcmxkIQ==';
const decodedString = atob(base64EncodedString);
console.log(decodedString); // 输出:Hello, World!
```
- Base64 编码解码为二进制数据:
```javascript
const base64EncodedData = 'SGVsbG8='; // 'Hello' 的 Base64 编码
const decodedData = new Uint8Array(Array.from(atob(base64EncodedData), c => c.charCodeAt(0)));
console.log(decodedData); // 输出:Uint8Array [ 72, 101, 108, 108, 111 ]
```
请注意,在使用 `btoa` 和 `atob` 进行编码和解码时,只支持 ASCII 字符集范围内的字符。如果遇到非 ASCII 字符,可以使用其他库或技术来处理更广泛的字符集,例如通过 `TextEncoder` 和 `TextDecoder` 进行编码和解码。
阅读全文
相关推荐
















