js-中文编码转utf8
utf8(str){//中文编码转为utf8 var UTFTranslate = { Change:function(pValue){ return pValue.replace(/[^\u0000-\u00FF]/g,function($0){return escape($0).replace(/(%u)(\w{4})/gi,"&#x$2;")}); }, ReChange:function(pValue){ return unescape(pValue.replace(/&#x/g,'%u').replace(/\\u/g,'%u').replace(/;/g,'')); } }; return UTFTranslate.Change(str); // "中文sdfsf" },
使用时直接调用传入要转为utf编码的字符串
let str = 'http://test/中文下载路径需要转为utf8的文件名'
let url = this.utf8(str)
扩展:
//UTF字符转换 var UTFTranslate = { Change:function(pValue){ return pValue.replace(/[^\u0000-\u00FF]/g,function($0){return escape($0).replace(/(%u)(\w{4})/gi,"&#x$2;")}); }, ReChange:function(pValue){ return unescape(pValue.replace(/&#x/g,'%u').replace(/\\u/g,'%u').replace(/;/g,'')); } }; 例如: UTFTranslate.ReChange('中文sdfdf'); //"中文sdfdf" UTFTranslate.Change('中文sdfsf'); // "中文sdfsf" //Asc转换 var AscTranslate = { Change: function(pAscString, pBoxId){ /* 转ASCII */ box = document.getElementById(pBoxId); box.innerHTML = ''; for(i = 0; i < pAscString.length; i++) { var asc = pAscString.charCodeAt(i); var str = String.fromCharCode(asc); box.innerHTML += str + ':' + asc + '<br/>'; }