方法名就是 atob 和 btoa ,具体语法如下:
IE8/IE9的polyfill
当下,仍有不少PC项目还需要兼容IE9,所以,我们可以专门针对这些浏览器再引入一段ployfill脚本或者一个JS文件即可。
[if IE] 表示所有IE浏览器,由于IE10+浏览器已经放弃了著名的IE条件注释的支持,Chrome等浏览器本身就不支持这个IE私有语法,因此,很天然的,上面一段script引入只在IE9-浏览器下有效。而我们本来就希望只IE8,IE9浏览器引入ployfill,于是正好完美衔接上。
也就是原生支持atob和btoa方法的浏览器认为就是一段无需关心的HTML注释,不支持atob和btoa的IE9及其以下浏览器则会加载我们的base64-polyfill.js,使浏览器也支持 window.btoa 和 window.atob 这个语法。
开源的 base64.js ,使用很简单,浏览器引入该JS文件,然后Base64编码这样:
解码就调用 decode 方法,如下:
encodeURI 函数对 URI 进行完整的编码
encodeURIComponent 函数假定它的参数是 URI 的一部分(比如协议、主机名、路径或查询字符串)。因此 encodeURIComponent() 函数将转义用于分隔 URI 各个部分的标点符号。
如果 URI 组件中含有分隔符,比如 ? 和 #,则应当使用 encodeURIComponent() 方法分别对各组件进行编码。
所以encodeURIComponent比encodeURI编码的范围更大。
1、如果只是编码字符串,使用escape
2、如果需要编码整个URL,然后需要使用这个URL,使用encodeURl
3、如果需要编码URL中的参数,使用encodeURlComponent
1、string --->base-64转码
2、base64转码的对象只能是字符串,不能对unicode转码
对于汉字,这就要使用window.encodeURIComponent和window.decodeURIComponent
一、base64加密使用JS函数的window.btoa()和 window.atob(),分别是编码和解码
二、编码和解码字符串
使用JS函数的escape()和unescape(),分别是编码和解码
三、AES加密解密
四、RSA加密解密