decodeURIComponent()

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.

Die Funktion decodeURIComponent() dekodiert eine zuvor durch encodeURIComponent() oder eine ähnliche Routine erstellte Komponente eines Uniform Resource Identifier (URI).

Probieren Sie es aus

Syntax

js
decodeURIComponent(encodedURI)

Parameter

encodedURI

Eine kodierte Komponente eines Uniform Resource Identifier.

Rückgabewert

Ein neuer String, der die dekodierte Version der angegebenen kodierten Komponente des Uniform Resource Identifier (URI) darstellt.

Ausnahmen

URIError

Wird ausgelöst, wenn encodedURI ein % enthält, dem nicht zwei hexadezimale Ziffern folgen, oder wenn die Escape-Sequenz kein gültiges UTF-8-Zeichen kodiert.

Beschreibung

decodeURIComponent() ist eine Funktions-Eigenschaft des globalen Objekts.

decodeURIComponent() verwendet denselben Dekodierungsalgorithmus wie in decodeURI() beschrieben. Es dekodiert alle Escape-Sequenzen, einschließlich solcher, die nicht durch encodeURIComponent erstellt werden, wie -.!~*'().

Beispiele

Dekodierung einer kyrillischen URL-Komponente

js
decodeURIComponent("JavaScript_%D1%88%D0%B5%D0%BB%D0%BB%D1%8B");
// "JavaScript_шеллы"

Fehler abfangen

js
try {
  const a = decodeURIComponent("%E0%A4%A");
} catch (e) {
  console.error(e);
}

// URIError: malformed URI sequence

Dekodierung von Abfrageparametern aus einer URL

decodeURIComponent() kann nicht direkt zum Parsen von Abfrageparametern aus einer URL verwendet werden. Es erfordert einige Vorbereitungen.

js
function decodeQueryParam(p) {
  return decodeURIComponent(p.replace(/\+/g, " "));
}

decodeQueryParam("search+query%20%28correct%29");
// 'search query (correct)'

Spezifikationen

Specification
ECMAScript Language Specification
# sec-decodeuricomponent-encodeduricomponent

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch