decodeURI()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
decodeURI()
函数能解码由encodeURI
创建或其他流程得到的统一资源标识符(URI)。
尝试一下
const uri = "https://mozilla.org/?x=шеллы";
const encoded = encodeURI(uri);
console.log(encoded);
// Expected output: "https://mozilla.org/?x=%D1%88%D0%B5%D0%BB%D0%BB%D1%8B"
try {
console.log(decodeURI(encoded));
// Expected output: "https://mozilla.org/?x=шеллы"
} catch (e) {
// Catches a malformed URI
console.error(e);
}
语法
decodeURI(encodedURI)
参数
encodedURI
-
一个完整的编码过的 URI
返回值
返回一个给定编码统一资源标识符 (URI) 的未编码版本的新字符串。
异常
当encodedURI
包含无效字符序列时,引发URIError
(“格式错误的 URI 序列”)异常。
描述
将已编码 URI 中所有能识别的转义序列转换成原字符,但不能解码那些不会被 encodeURI
编码的内容(例如 "#
")。
示例
解码一个西里尔字母(Cyrillic)URL
js
decodeURI(
"https://developer.mozilla.org/ru/docs/JavaScript_%D1%88%D0%B5%D0%BB%D0%BB%D1%8B",
);
// "https://developer.mozilla.org/ru/docs/JavaScript_шеллы"
捕捉异常
try { var a = decodeURI('%E0%A4%A'); } catch(e) { console.error(e); } // URIError: malformed URI sequence
规范
Specification |
---|
ECMAScript® 2025 Language Specification # sec-decodeuri-encodeduri |
浏览器兼容性
Report problems with this compatibility data on GitHubdesktop | mobile | server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
decodeURI |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.