HTML: Markup language
CSS: Styling language
JavaScript: Scripting language
Web APIs: Programming interfaces
All web technology
Learn web development
Discover our tools
Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
View in English Always switch to English
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.
Die decodeURI()-Funktion dekodiert einen Uniform Resource Identifier (URI), der zuvor durch encodeURI() oder eine ähnliche Routine erstellt wurde.
decodeURI()
encodeURI()
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
Ein vollständiger, kodierter Uniform Resource Identifier.
Eine neue Zeichenkette, die die unkodierte Version des angegebenen kodierten Uniform Resource Identifiers (URI) darstellt.
URIError
Wird ausgelöst, wenn encodedURI ein % enthält, dem nicht zwei hexadezimale Ziffern folgen, oder wenn die Escape-Sequenz keinen gültigen UTF-8-Zeichensatz kodiert.
%
decodeURI() ist eine Funktions-Eigenschaft des globalen Objekts.
Die decodeURI()-Funktion dekodiert den URI, indem sie jede Escape-Sequenz in der Form %XX als eine UTF-8-Codeeinheit (ein Byte) behandelt. In UTF-8 gibt die Anzahl der führenden 1-Bits im ersten Byte, das 0 (für 1-Byte-ASCII-Zeichen), 2, 3 oder 4 betragen kann, die Anzahl der Bytes im Zeichen an. Durch das Lesen der ersten Escape-Sequenz kann decodeURI() bestimmen, wie viele weitere Escape-Sequenzen verarbeitet werden müssen. Wenn decodeURI() die erwartete Anzahl von Sequenzen nicht findet, oder wenn die Escape-Sequenzen keinen gültigen UTF-8-Zeichensatz kodieren, wird ein URIError ausgelöst.
%XX
decodeURI() dekodiert alle Escape-Sequenzen, aber wenn die Escape-Sequenz eines der folgenden Zeichen kodiert, bleibt die Escape-Sequenz im Ausgabestring erhalten (da sie Teil der URI-Syntax sind):
; / ? : @ & = + $ , #
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_шеллы"
decodeURI() geht davon aus, dass die Eingabe ein vollständiger URI ist, daher dekodiert es keine Zeichen, die Teil der URI-Syntax sind.
decodeURI( "https://developer.mozilla.org/docs/JavaScript%3A%20a_scripting_language", ); // "https://developer.mozilla.org/docs/JavaScript%3A a_scripting_language" decodeURIComponent( "https://developer.mozilla.org/docs/JavaScript%3A%20a_scripting_language", ); // "https://developer.mozilla.org/docs/JavaScript: a_scripting_language"
try { const a = decodeURI("%E0%A4%A"); } catch (e) { console.error(e); } // URIError: malformed URI sequence
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.
decodeURIComponent()
encodeURIComponent()