85271041 2015-04-15
在js文件中发现一串编码,\u开头。起初以为是ASIIC码,也不是。utf-8编码也不是。后来,发现是unicode编码。支持中文和英文。很容易和URL编码混淆。例如,在浏览器地址栏中的空格变为%20,汉字变为%开头的字符串等等。
高人实现的unicode转码和解码特有意思。支持中文英文。
javascript代码如下:
<script type="text/javascript">// <![CDATA[ var decToHex = function(str) { var res=[]; for(var i=0;i < str.length;i++) res[i]=("00"+str.charCodeAt(i).toString(16)).slice(-4); return "\\u"+res.join("\\u"); } var hexToDec = function(str) { str=str.replace(/\\/g,"%"); return unescape(str); } var bianma=function() { document.getElementById('code12').value=decToHex(document.getElementById('code11').value); } var jiema=function() { document.getElementById('code12').value=hexToDec(document.getElementById('code11').value); } // ]]></script> <p><textarea id="code11" style="width: 500px; height: 100px;" rows="5" cols="50" height="100"></textarea> <br /> <input onclick="bianma()" type="button" value="编码" /> <input onclick="jiema()" type="button" value="解码" /><br /> <textarea id="code12" style="width: 500px; height: 100px;" rows="5" cols="50"></textarea></p>
转自http://www.cnblogs.com/skykang/archive/2011/06/02/2068802.html