Javascript 用反斜杠解码十六进制字符串

问题描述

我从服务器得到了十六进制字符串:

const res = {"data": "\\xf0\\x9d\\x90\\x81"};

原文为:

?

我使用了 decodeURIComponent 并得到了转义函数

decodeURIComponent(escape(res.data));
// "\xf0\x9d\x90\x81"

如何用双反斜杠解码十六进制字符串?

解决方法

只是给你的一个小样本。 希望它有效!!

     <!DOCTYPE html>
     <html>
     <body>



    <button onclick="myFunction()">Try it</button>

    <p id="demo"></p>

    <script>
    function myFunction() {

     var uri_enc = '\\xf0\\x9d\\x90\\x81';


     var uri_dec= decodeURIComponent(uri_enc.replace(/\\x/g,'%'));
      var res = "Encoded URI: " + uri_enc + "<br>" + "Decoded URI: " + uri_dec;
     document.getElementById("demo").innerHTML = res;
     }
    </script>

    </body>
    </html>

结果如下:

    Encoded URI: \xf0\x9d\x90\x81
    Decoded URI: ?

如果不行告诉我们,我们会分享更多解决方案!!