这是我的unicode字符串,我正在使用API从jquery的DB中获取
\ud83d\ude02\u263a\ufe0f\u263a\ufe0f\ud83d\ude0a\ud83d\ude09\ud83d\ude0f\ud83d\ude01\ud83d\ude18\ud83d\ude14\ud83d\ude18\ud83d\ude01\ud83d\ude02\ud83d\ude04\ud83e\udd23\ud83d\ude02\u263a\ufe0f\ud83d\ude0f\ud83d\ude0f
,我想将其显示为表情符号字符。 如果我在脚本中显式编写此字符串,则它会显示表情符号,但是当我从数据库中获取它并从响应中显示它时(从API获取),它会显示为纯字符串。
$.each(response.data,function(key,value){
const str = value.comment_text.replace(/\\\\/g,"\\");
html += '<div class="comment-block" id="cmnt' + value.comment_id + '">\
<div class="content-box">\
<p class="text long-string "><a href="javascript:void(0)" class="blue-text bold-font">' + value.first_name + ' ' + value.last_name.substr(0,1).toUpperCase() + ' </a> #post test #post1 #post3 hvh\ud83d\ude0f "' + str + '"</p>\
</div>\
</div>';
});
这是我在js中的代码
\\\\ud83d\\\\ude02\\\\u263a\\\\ufe0f\\\\u263a\\\\ufe0f\\\\ud83d\\\\ude0a\\\\ud83d\\\\ude09\\\\ud83d\\\\ude0f\\\\ud83d\\\\ude01\\\\ud83d\\\\ude18\\\\ud83d\\\\ude14\\\\ud83d\\\\ude18\\\\ud83d\\\\ude01\\\\ud83d\\\\ude02\\\\ud83d\\\\ude04\\\\ud83e\\\\udd23\\\\ud83d\\\\ude02\\\\u263a\\\\ufe0f\\\\ud83d\\\\ude0f\\\\ud83d\\\\ude0f
数据库中的字符串
答案 0 :(得分:1)
以下功能将输入字符串中的所有unicode字符转换为字符。
function unicodeToChar(text){
return text.replace(/\\u[\dA-F]{4}/gi, function(match){
return String.fromCharCode(parseInt(match.replace(/\\u/g, ''), 16));});
}