如何在 JavaScript 中解码已编码的字符串?
javascriptobject oriented programmingfront end technology
解码
在 JavaScript 中,要解码字符串,可使用 unescape() 方法。此方法获取由 escape() 方法编码的字符串,然后对其进行解码。使用 unescape() 方法,字符串中的十六进制字符将替换为它们所代表的实际字符。
语法
unescape(string)
示例
以下两个感叹号已使用 escape() 方法转换为十六进制字符。随后,使用 unescape() 方法将这些标记解码为自然字符。
<html> <body> <script type="text/javascript"> // 使用 escape 函数编码的特殊字符 var str = escape("Tutorialspoint!!"); document.write("</br>"); document.write("Encoded : " + str); // unescape() 函数 document.write("Decoded : " + unescape(str)) </script> </body> </html>
输出
Encoded : Tutorialspoint%21%21 Decoded : Tutorialspoint!!
有一个例外,字符 .(dot) 和 @ 不会转换为十六进制字符。例如,在以下代码中使用 escape() 方法时,除 .(dot) 和 @ 外,所有字符都已转换为十六进制。
示例
<html> <body> <script type="text/javascript"> str = escape("My gmail address is robbinhood@rocketmail.com") document.write("Encoded : " + str); document.write("</br>"); // unescape() function document.write("Decoded : " + unescape(str)) </script> </body> </html>
输出
Encoded : My%20gmail%20address%20is%20robbinhood@rocketmail.com Decoded : My gmail address is robbinhood@rocketmail.com