2016-07-29 115 views
0

我有用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只是我發現,而我正在尋找編碼類型的字符串 –

回答

2

好吧,你的字符串似乎使用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á'