unescape()

已弃用:此功能不再推荐。尽管某些浏览器可能仍然支持它,但它可能已从相关的 Web 标准中删除,可能正在被删除过程中,或者可能仅出于兼容性目的而保留。避免使用它,如果可能,请更新现有代码;请参阅此页面底部的兼容性表以指导您的决策。请注意,此功能可能会随时停止工作。

注意:unescape() 是浏览器实现的非标准函数,仅用于跨引擎兼容性。它不需要所有 JavaScript 引擎都实现,并且可能并非在所有地方都能正常工作。如果可能,请使用decodeURIComponent()decodeURI()

unescape()函数计算一个新字符串,其中十六进制转义序列被替换为它们表示的字符。转义序列可能由像escape()这样的函数引入。

语法

js
unescape(str)

参数

str

要解码的字符串。

返回值

一个新的字符串,其中某些字符已取消转义。

描述

unescape() 是全局对象的函数属性。

unescape() 函数将任何转义序列替换为它表示的字符。具体来说,它将任何形式为%XX%uXXXX(其中X表示一个十六进制数字)的转义序列替换为具有十六进制值XX/XXXX的字符。如果转义序列不是有效的转义序列(例如,如果%后跟一个或零个十六进制数字),则保持原样。

注意:此函数主要用于百分比编码,并且部分基于RFC 1738中的转义格式。unescape()函数不会评估字符串字面量中的转义序列。您可以将\xXX替换为%XX,将\uXXXX替换为%uXXXX,以获得可以由unescape()处理的字符串。

示例

使用 unescape()

js
unescape("abc123"); // "abc123"
unescape("%E4%F6%FC"); // "äöü"
unescape("%u0107"); // "ć"

规范

规范
ECMAScript 语言规范
# sec-unescape-string

浏览器兼容性

BCD 表格仅在浏览器中加载

另请参阅