使用js转化native和ascii

作者: admin 分类: js 发布时间: 2013-01-07 17:31 ė 6 使用js转化native和ascii已关闭评论


<script type="text/javascript">
function native2ascii(strNative) {
     var output = "";
     for (var i=0; i<strNative.length; i++) {
         var c = strNative.charAt(i);
         var cc = strNative.charCodeAt(i);
         if (cc > 0xff)
           output += "\\u" + toHex(cc >> 8) + toHex(cc & 0xff);
         else
           output += c;
     }
     return output;
}

var hexChars = "0123456789ABCDEF";
function toHex(n) {
     var nH = (n >> 4) & 0x0f;
     var nL = n & 0x0f;
     return hexChars.charAt(nH) + hexChars.charAt(nL);
}

function ascii2native(strAscii) {
     var output = "";
     var posFrom = 0;
     var posTo = strAscii.indexOf("\\u", posFrom);
     while (posTo >= 0) {
         output += strAscii.substring(posFrom, posTo);
         output += toChar(strAscii.substr(posTo, 6));
         posFrom = posTo + 6;
         posTo = strAscii.indexOf("\\u", posFrom);
     }
     output += strAscii.substr(posFrom);
     return output;
}

function toChar(str) {
     if (str.substr(0, 2) != "\\u") return str;

     var code = 0;
     for (var i=2; i<str.length; i++) {
         var cc = str.charCodeAt(i);
         if (cc >= 0x30 && cc <= 0x39)
             cc = cc - 0x30;
         else if (cc >= 0x41 && cc <= 0x5A)
             cc = cc - 0x41 + 10;
         else if (cc >= 0x61 && cc <= 0x7A)
             cc = cc - 0x61 + 10;

         code <<= 4;
         code += cc;
     }

     if (code < 0xff) return str;

     return String.fromCharCode(code);
}
</script>




    写入内容,点击按钮转化
    <br />

    <textarea id="theText" name="theText" cols="80" rows="20" wrap="off"></textarea>
    <br />
    <input type="button" value="native to ascii"  onclick="document.getElementById('theText').value=native2ascii(document.getElementById('theText').value);">
        
    <input type="button" value="ascii to native" onclick="document.getElementById('theText').value=ascii2native(document.getElementById('theText').value);">

本文出自weicms.net,转载时请注明出处及相应链接。

本文永久链接: http://www.weicms.net/2013/01/07/js_native_ascii.html

0
Ɣ回顶部