在Java脚本中解码UTF16编码的字符串(URL)

问题描述:

我有用UTF16编码的字符串,我想用JS解码它,当我使用简单的decodeURI() 函数我得到期望的结果,但在特殊字符存在的情况下在像á,ó等字符串中,它不解码。 在更多的分析中,我发现编码字符串中的这些字符包含ASCII值。在Java脚本中解码UTF16编码的字符串(URL)

说我有字符串“Acesse JA,编码的版本:‘?Acesse%20J%E1’我怎样才能从编码版本使用Java脚本获取字符串

编辑: 的字符串的一部分URL

+0

你是什么意思“解码UTF-16字符串”? JS字符串已经是UTF-16 – Iso

+0

我得到了一些编码字符串“Acesse%20j%E1”,但是当我尝试使用decodeURI()解码它时,我没有得到任何结果。 我如何解码它? UTF16只是我发现,而我正在寻找编码类型的字符串 –

好吧,你的字符串似乎使用escape已编码,使用unescape解码吧!

unescape('Acesse%20j%E1');    // => 'Acesse já' 

然而,escapeunescape已被弃用,你最好ü se encodeURIencodeURIComponent这里。

encodeURIComponent('Acesse já');  // => 'Acesse%20j%C3%A1' 
decodeURIComponent('Acesse%20j%C3%A1'); // => 'Acesse já'