js base64编码
时间: 2023-06-21 13:04:16 浏览: 98
在 JavaScript 中,可以使用 btoa() 函数进行 Base64 编码,使用 atob() 函数进行 Base64 解码。
以下是一个简单的示例:
```javascript
// Base64 编码
let str = 'Hello, world!';
let encoded = btoa(str);
console.log(encoded); // "SGVsbG8sIHdvcmxkIQ=="
// Base64 解码
let decoded = atob(encoded);
console.log(decoded); // "Hello, world!"
```
注意,btoa() 函数只能编码 ASCII 字符串。如果要编码非 ASCII 字符串,需要先将其转换为 UTF-8 编码的字节数组,然后再进行 Base64 编码。例如:
```javascript
function utf8_to_b64(str) {
return btoa(unescape(encodeURIComponent(str)));
}
function b64_to_utf8(str) {
return decodeURIComponent(escape(atob(str)));
}
// 使用示例
let str = '你好,世界!';
let encoded = utf8_to_b64(str);
console.log(encoded); // "JUU0JUJBJTk1JUU1JUE5JUEwJUU1JUEyJUJEJUU0JUJFJUEwJUU1JUEwJThBJUU1JTlCJTk0JUU1JTlEJTk5JUU1JUE5JTk5JQ=="
let decoded = b64_to_utf8(encoded);
console.log(decoded); // "你好,世界!"
```
阅读全文