2013-01-17 120 views
3

可能重复:
How do I decode a string with escaped unicode?的Javascript的Unicode中转义反斜线

我有一个JavaScript变量,在我所存储的Unicode字符。

var value = "\\u53d3\\u5f13\\"; 

我动态地添加上述值到一个div,由于额外的反斜杠(\\ u)的适当的Unicode值不会显示出来。但是,如果我将它改为\ u的单斜杠\ u。 unicode符号被正确显示。

在我的环境中,我无法用单斜杠存储该值。作为回应是从服务器端..

是否有反正双反斜杠用单反斜线来显示正确的Unicode?

由于提前

+3

这一个回答你的问题: http://stackoverflow.com/questions/7885096/如何做我解码字符串与转义unicode – Vinzenz

+0

感谢您的链接.. :) – vjy

回答

2

这不是反斜线了,这是什么字符串字面包含。如果您刚刚更换了反斜杠,您最终只能以"u53d3u5f13"结束。您UNESCAPE他们可以平凡,但(如果你不关心什么为\ uXXXX将被替换):

function unescapeUnicode(str) { 
    return str.replace(/\\u([a-fA-F0-9]{4})/g, function(g, m1) { 
     return String.fromCharCode(parseInt(m1, 16)); 
    }); 
} 

var value = "\\u53d3\\u5f13\\"; 
unescapeUnicode(value); 
"叓弓\" 
+0

非常感谢。工作好:) – vjy