怎么解决js解码base64中文乱码问题

JavaScript010

怎么解决js解码base64中文乱码问题,第1张

base64编码:

string base64_encode(string data)

data:要进行base64编码的数据。该函数的返回结果为字符串类型

还原:

string base64_decode(string encoded_data)

encoded_data 指要进行base64解码的字符串

  从IE10+浏览器开始,所有浏览器就原生提供了Base64编码、解码方法,不仅可以用于浏览器环境,Service Worker环境也可以使用。

方法名就是 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 方法,如下:

1、首先查看自己所写程序页面的编码是什么字符编码的,是gb2312还是utf-8的:

2、找到js文件右击鼠标,选择打开方式,找到记事本的选项打开:

3、打开后单击记事本菜单栏的文件选项,然后选择另存为,弹出另存为对话框:

4、在弹出的保存窗口的最下面有一个编码类型,将这个编码类型选择程序对应的类型,然后保存,就可以消除乱码的问题了。以上就是解决js中文乱码的操作: