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)。

尝试一下

语法

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 Language Specification
# sec-decodeuri-encodeduri

浏览器兼容性

BCD tables only load in the browser

参见