例如,我有一个包含由日文字符组成的字符串的变量;
“みどりいろ”
我该如何将其转换为其 Javascript 转义形式?
对于这个例子,我特别想要的结果是:
"\u306f\u3044\u3044\u308d"
如果有变化,我更喜欢 jquery 方法。
最佳答案
"み".charCodeAt(0).toString(16);
这将为您提供 unicode(十六进制)。您可以通过循环运行它:
String.prototype.toUnicode = function(){
var result = "";
for(var i = 0; i < this.length; i++){
// Assumption: all characters are < 0xffff
result += "\\u" + ("000" + this[i].charCodeAt(0).toString(16)).substr(-4);
}
return result;
};
"みどりいろ".toUnicode(); //"\u307f\u3069\u308a\u3044\u308d"
"Mi Do Ri I Ro".toUnicode(); //"\u004d\u0069\u0020\u0044\u006f\u0020\u0052\u0069\u0020\u0049\u0020\u0052\u006f"
"Green".toUniCode(); //"\u0047\u0072\u0065\u0065\u006e"
演示:http://jsfiddle.net/DerekL/X7MCy/
更多信息:.charCodeAt
关于Javascript,将unicode字符串转换为Javascript转义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21014476/