欢迎来到天天文库
浏览记录
ID:16513626
大小:63.50 KB
页数:4页
时间:2018-08-13
《js中把中文字符转换成utf8编码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、js中把中文字符转换成Utf8编码最近在做个pyhthon应用,有一个逻辑是需要在前台通过JS把一串字符串通过get方式提交到后台,提交英文和数字都正常,但是提交中文时出现了问题,因为在python的服务器端接收的是utf-8编码,所以需要在前台进行转码,以下是网上找来一段相对还不错的UTF-8JS转码函数//--------把中文字符转换成Utf8编码------------------------// functionEncodeUtf8(s1) { vars=escape(s1); varsa=s.spl
2、it("%"); varretV=""; if(sa[0]!="") { retV=sa[0]; } for(vari=1;i3、 elseretV+="%"+sa[i]; } returnretV; } functionStr2Hex(s) { varc=""; varn; varss="0123456789ABCDEF"; vardigS=""; for(vari=0;i4、)); } //returnvalue; returndigS; } functionDec2Dig(n1) { vars=""; varn2=0; for(vari=0;i<4;i++) { n2=Math.pow(2,3-i); if(n1>=n2) { s+='1'; n1=n1-n2; } else 5、 s+='0'; } returns; } functionDig2Dec(s) { varretV=0; if(s.length==4) { for(vari=0;i<4;i++) { retV+=eval(s.charAt(i))*Math.pow(2,3-i); } returnretV; } ret6、urn-1; } functionHex2Utf8(s) { varretS=""; vartempS=""; varss=""; if(s.length==16) { tempS="1110"+s.substring(0,4); tempS+="10"+ s.substring(4,10); tempS+="10"+s.substring(10,16); varsss="0123456789ABCDEF"; 7、 for(vari=0;i<3;i++) { retS+="%"; ss=tempS.substring(i*8,(eval(i)+1)*8); retS+=sss.charAt(Dig2Dec(ss.substring(0,4))); retS+=sss.charAt(Dig2Dec(ss.substring(4,8))); 8、 } returnretS; } return""; }
3、 elseretV+="%"+sa[i]; } returnretV; } functionStr2Hex(s) { varc=""; varn; varss="0123456789ABCDEF"; vardigS=""; for(vari=0;i4、)); } //returnvalue; returndigS; } functionDec2Dig(n1) { vars=""; varn2=0; for(vari=0;i<4;i++) { n2=Math.pow(2,3-i); if(n1>=n2) { s+='1'; n1=n1-n2; } else 5、 s+='0'; } returns; } functionDig2Dec(s) { varretV=0; if(s.length==4) { for(vari=0;i<4;i++) { retV+=eval(s.charAt(i))*Math.pow(2,3-i); } returnretV; } ret6、urn-1; } functionHex2Utf8(s) { varretS=""; vartempS=""; varss=""; if(s.length==16) { tempS="1110"+s.substring(0,4); tempS+="10"+ s.substring(4,10); tempS+="10"+s.substring(10,16); varsss="0123456789ABCDEF"; 7、 for(vari=0;i<3;i++) { retS+="%"; ss=tempS.substring(i*8,(eval(i)+1)*8); retS+=sss.charAt(Dig2Dec(ss.substring(0,4))); retS+=sss.charAt(Dig2Dec(ss.substring(4,8))); 8、 } returnretS; } return""; }
4、)); } //returnvalue; returndigS; } functionDec2Dig(n1) { vars=""; varn2=0; for(vari=0;i<4;i++) { n2=Math.pow(2,3-i); if(n1>=n2) { s+='1'; n1=n1-n2; } else
5、 s+='0'; } returns; } functionDig2Dec(s) { varretV=0; if(s.length==4) { for(vari=0;i<4;i++) { retV+=eval(s.charAt(i))*Math.pow(2,3-i); } returnretV; } ret
6、urn-1; } functionHex2Utf8(s) { varretS=""; vartempS=""; varss=""; if(s.length==16) { tempS="1110"+s.substring(0,4); tempS+="10"+ s.substring(4,10); tempS+="10"+s.substring(10,16); varsss="0123456789ABCDEF";
7、 for(vari=0;i<3;i++) { retS+="%"; ss=tempS.substring(i*8,(eval(i)+1)*8); retS+=sss.charAt(Dig2Dec(ss.substring(0,4))); retS+=sss.charAt(Dig2Dec(ss.substring(4,8)));
8、 } returnretS; } return""; }
此文档下载收益归作者所有