JavaScript对字符串进行Base64的编码与解码 以及中文乱码处理方法
这篇文章由 DeathGhost 编辑,发布于
归类于 Javascript » 👋分享到微博 当前评论 0 条。
在实例部分情景中,犹如我们需要对密码进行Base64编码或解码,一般情况下,我们会直接引用网上base64.js文件对其处理。现在我们直接可以使用WEB API提供的WindowBase64的两个函数对其处理,window.btoa()编码与window.atob()解码对其处理。
你可以使用 window.btoa()
方法来编码一个可能在传输过程中出现问题的数据,并且在接受数据之后,使用 atob()
方法再将数据解码。
btoa()
从 String 对象中创建一个 base-64 编码的 ASCII 字符串,其中字符串中的每个字符都被视为一个二进制数据字节。
atob()
对经过 base-64 编码的字符串进行解码。
编码语法
let encodedData = window.btoa("DeathGhost"); // 编码 输出: RGVhdGhHaG9zdA==
解码语法
let decodedData = window.atob('RGVhdGhHaG9zdA=='); // 解码 输出:DeathGhost
对于中文字符串进行编码解码时,我们需要对其做一定处理方可,否则乱码
let name = '新码笔记';
let encodedData = window.btoa(unescape(encodeURIComponent(name )));
// 输出:5paw56CB56yU6K6w
let decodedData = decodeURIComponent(escape(window.atob('5paw56CB56yU6K6w')))
// 解码输出:新码笔记
就简单写这么多,无意中看到这个方法,以前项目中用过这个方法,当时也没记录;最近站点刚重新建立起来,博客内容太少了,在这里也记录下来。