<script type="text/javascript">
function JS_encode(nativecode) {
nativecode = nativecode.split("");
var ascii = "";
for (var i = 0; i < nativecode.length; i++) {
var code = Number(nativecode[i].charCodeAt(0));
if (code > 127) {
var charAscii = code.toString(16);
charAscii = new String("0000").substring(charAscii.length, 4) + charAscii;
ascii += "\\u" + charAscii;
} else {
ascii += nativecode[i];
}
}
return ascii;
}
function JS_uncode (asciicode) {
asciicode = asciicode.split("\\u");
var nativeValue = asciicode[0];
for (var i = 1; i < asciicode.length; i++) {
var code = asciicode[i];
nativeValue += String.fromCharCode(parseInt("0x" + code.substring(0, 4)));
if (code.length > 4) {
nativeValue += code.substring(4, code.length);
}
}
return nativeValue;
}
var txt = JS_encode("你好世界")
console.log(txt);
console.info(JS_uncode(txt));
</script>
测试结果:
\u4f60\u597d\u4e16\u754c
你好世界
输出: