URL

new URL(url, base)

Zerlegt eine Adresse in Teile und lässt Sie diese lesen und ändern. Über searchParams erhalten Sie die Parameter der Adresse als URLSearchParams.

Parameter

  • url – eine absolute Adresse oder eine relative mit dem Parameter base.
  • base – optional, die Adresse, relativ zu der eine relative Adresse aufgelöst wird (im Browser z. B. location.href).

Rückgabewert

Ein URL-Objekt; eine ungültige Adresse wirft einen TypeError.

Beispiele

const u = new URL('https://www.garth.cz:8443/js-referenz/url/?seite=2&sortierung=preis#beispiele');
console.log(u.protocol, u.hostname, u.port, u.pathname);
console.log(u.search, u.hash, u.origin, u.searchParams.get('seite'));
u.searchParams.set('seite', 3);
u.hash = '';
console.log(u.href);
console.log(new URL('../php/', 'https://www.garth.cz/js-referenz/url/').href);

Ausgabe:

https: www.garth.cz 8443 /js-referenz/url/
?seite=2&sortierung=preis #beispiele https://www.garth.cz:8443 2
https://www.garth.cz:8443/js-referenz/url/?seite=3&sortierung=preis
https://www.garth.cz/js-referenz/php/

Eine ungültige Adresse wirft einen Fehler, Umlaute und Leerzeichen werden kodiert:

try {
  new URL('www.garth.cz');
} catch (e) {
  console.log(e.name);
}
console.log(new URL('https://www.bücher.de/mein ordner?q=Grüße aus Köln').href);

Ausgabe:

TypeError
https://www.xn--bcher-kva.de/mein%20ordner?q=Gr%C3%BC%C3%9Fe%20aus%20K%C3%B6ln

Worauf Sie achten sollten

  • Eine Adresse ohne Protokoll (www.garth.cz) ist keine gültige absolute Adresse – ergänzen Sie https:// oder eine Basis.
  • URL.canParse() prüft sie ohne try...catch.
  • Prüfen Sie bei Links von Benutzern das protocol – die Adresse javascript:… ist eine gültige URL.

Browserunterstützung

Baseline – weithin verfügbar: funktioniert in allen gängigen Browsern, und das schon lange (spätestens seit 2015). Ab Version: Chrome 32, Firefox 19, Safari 7; Node.js 10.0.0. Stand: Oktober 2026 (MDN browser-compat-data).

Siehe auch:
URLSearchParams
URL.canParse()
encodeURIComponent()
window.location