https://github.com/dankogai/js-base64
base64使用很简单,浏览器引入该JS文件,然后Base64编码这样:
var a=Base64.encode('javascript');
var b=a
var c=Base64.decode(b)
console.log(a,c)
其实浏览器原生早已支持JS Base64编码解码(IE10+浏览器开始)
原生atob和btoa方法
方法名就是atob和btoa,具体语法如下:
var decodedData = window.atob(encodedData);
`var encodedData = window.btoa(stringToEncode);
var a=window.btoa('javascript')
var b=a
var c=window.atob(b)
console.log(a,c)
这两个单词很突兀,a to b 拆开记会好记点 b在前面是编译成base64,a在前面是转换为普通字符串
window === self // true
window.window === window.self // true
window.self === self // true
window.window === self // true
由于浏览器的特性使用self也是可以的,但是在jsworker中还是使用self为主!
var a=window.btoa('哈喽')
var b=a
var c=window.atob(b)
console.log(a,c)
注意如果编译中文会出错,需要转换一下??!
var a=window.btoa(window.encodeURIComponent('哈喽'));
var b=a
var c=window.decodeURIComponent(window.atob(b));
console.log(a,c)
处理起来也不难,当然别的解码也可以
var a=btoa(unescape(encodeURIComponent('哈喽')));
`
如果你要兼容IE10以下可能需要搞一下polyfill,这个就自行百度吧,毕竟我也没得IE??!
不知道有没有知道上传文件的时候是有base64数据输出的
var reader = new FileReader();
reader.onload = function(e) {
// e.target.result就是该文件的完整Base64 Data-URI
};
reader.readAsDataURL(file);