【问题标题】:Convert Unicode string to display emoji character将 Unicode 字符串转换为显示表情符号字符
【发布时间】:2019-05-20 15:27:50
【问题描述】:

这是我使用 API 从 jquery 中的 DB 获取的 unicode 字符串

\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

我想将其显示为 emoji 字符。 如果我在脚本中显式编写此字符串,那么它会显示表情符号,但是当我从数据库中获取它并从我从 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

数据库中的字符串

【问题讨论】:

  • 请分享您获得响应并显示它的代码。

标签: jquery json unicode emoji unicode-string


【解决方案1】:

下面的函数获取输入字符串中的所有unicode字符,并将它们转换为字符。

function unicodeToChar(text){ return text.replace(/\\u[\dA-F]{4}/gi, function(match){ return String.fromCharCode(parseInt(match.replace(/\\u/g, ''), 16));}); }

【讨论】:

  • 哟..非常感谢
猜你喜欢
  • 2020-06-23
  • 1970-01-01
  • 1970-01-01
  • 2018-08-28
  • 2015-04-02
  • 1970-01-01
  • 2021-10-04
  • 2021-11-07
  • 1970-01-01
相关资源
最近更新 更多