js的base64加密方式
时间: 2023-12-09 21:36:48 浏览: 36
以下是在JavaScript中使用Base64进行编码和解码的例子:
1.使用btoa()函数进行编码
```javascript
let str = 'Hello, world!';
let encoded = btoa(str);
console.log(encoded); // 输出:SGVsbG8sIHdvcmxkIQ==
```
2.使用atob()函数进行解码
```javascript
let encoded = 'SGVsbG8sIHdvcmxkIQ==';
let decoded = atob(encoded);
console.log(decoded); // 输出:Hello, world!
```
需要注意的是,btoa()函数只能编码ASCII字符,如果要编码非ASCII字符(如中文),需要先将其转换为UTF-8格式,然后再进行编码。可以使用encodeURIComponent()和unescape()函数来实现:
```javascript
let str = '个人个人个人和';
let utf8 = unescape(encodeURIComponent(str));
let encoded = btoa(utf8);
console.log(encoded); // 输出:5Liq5Lq65Liq5Lq65Liq5Lq65ZKM
```
同样地,如果要解码非ASCII字符,需要先使用atob()函数进行解码,然后再使用decodeURIComponent()和escape()函数进行转换:
```javascript
let encoded = '5Liq5Lq65Liq5Lq65Liq5Lq65ZKM';
let utf8 = atob(encoded);
let str = decodeURIComponent(escape(utf8));
console.log(str); // 输出:个人个人个人和
```