js对于base64的实现
时间: 2023-10-25 12:10:20 浏览: 80
JavaScript提供了内置的btoa()和atob()函数来实现Base64编码和解码。btoa()函数将一个字符串转换为Base64编码,atob()函数将Base64编码的字符串转换为原始字符串。
以下是一个使用btoa()和atob()函数的示例:
```javascript
// 将字符串转换为Base64编码
let str = "Hello World!";
let base64 = btoa(str);
console.log(base64); // "SGVsbG8gV29ybGQh"
// 将Base64编码的字符串转换为原始字符串
let decodedStr = atob(base64);
console.log(decodedStr); // "Hello World!"
```
需要注意的是,btoa()函数只能处理ASCII字符集中的字符,如果字符串中包含非ASCII字符,需要先将字符串转换为UTF-8编码,再进行Base64编码。例如:
```javascript
// 将包含非ASCII字符的字符串转换为Base64编码
let str = "你好,世界!";
let utf8 = unescape(encodeURIComponent(str)); // 先将字符串转换为UTF-8编码
let base64 = btoa(utf8);
console.log(base64); // "5L2g5aW977yM5LiW77yB5pivIQ=="
// 将Base64编码的字符串转换为原始字符串
let decodedBase64 = atob(base64);
let decodedStr = decodeURIComponent(escape(decodedBase64)); // 将Base64编码的字符串转换为UTF-8编码,再转换为原始字符串
console.log(decodedStr); // "你好,世界!"
```
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231044930.png)
![-](https://img-home.csdnimg.cn/images/20241231045021.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![.zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![text/x-c](https://img-home.csdnimg.cn/images/20250102104920.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![-](https://img-home.csdnimg.cn/images/20241231044736.png)