1、知識准備
str.charCodeAt() 返回字符串中的第n個字符的代碼;
String.fromCharCode(27573) 返回指定Unicode編碼的字符;
例:
var str="勝多負少"; document.write(str.charCodeAt(0)+'<br/>'); //32988 document.write(str.charCodeAt(2)+'<br/>'); //36127 document.write(String.fromCharCode(32988)+'<br/>'); //勝 document.write(String.fromCharCode(36127)+'<br/>'); //負
2、把 中文字符串 轉換為 十六進制Unicode編碼
var toUnicode = function (s) { var str = ""; for (var i = 0; i < s.length; i++) { str +="\\u"+s.charCodeAt(i).toString(16)+"\t"; } return str; } var a = '勝多負少'; document.write(toUnicode(a)); // \u80dc \u591a \u8d1f \u5c11
3、把 十六進制Unicode編碼 轉換為 中文字符串。
因為"\u"會被轉義,所以字符串里要寫成"\\u"。
var toStr = function (n){ var str = ""; var s = n.split('\\u'); for(var i = 0;i < s.length;i++){ str += String.fromCharCode(parseInt(s[i],16))+"\t"; } return str; } var b = "\\u80dc \\u591a \\u8d1f \\u5c11"; document.write(toStr(b)); // 勝 多 負 少
當然,查看把 十六進制Unicode編碼 轉換為 中文字符串 最簡單的方法就是:直接在 控制台 里 輸入、回車,向下面這樣(此處直接'\u+xxxx'就可):
4、Unicode編碼更多知識
百度百科:http://baike.baidu.com/view/40801.htm
阮一峰的網絡日志:《字符編碼筆記:ASCII,Unicode和UTF-8》 http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html
漢字Unicode編碼表:http://www.chi2ko.com/tool/CJK.htm