Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

URL

Baseline Weitgehend verfügbar *

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.

* Einige Teile dieser Funktion werden möglicherweise unterschiedlich gut unterstützt.

Hinweis: Diese Funktion ist in Web Workers verfügbar.

Das URL-Interface wird verwendet, um URLs zu parsen, zu konstruieren, zu normalisieren und zu kodieren. Es bietet Eigenschaften, die es Ihnen ermöglichen, die Komponenten einer URL einfach zu lesen und zu ändern.

Normalerweise erstellen Sie ein neues URL-Objekt, indem Sie die URL als Zeichenkette beim Aufruf des Konstruktors angeben oder eine relative URL und eine Basis-URL bereitstellen. Sie können dann die analysierten Komponenten der URL einfach lesen oder Änderungen an der URL vornehmen.

Konstruktor

URL()

Erstellt und gibt ein URL-Objekt aus einer URL-Zeichenkette und optionaler Basis-URL-Zeichenkette zurück. Wirft eine Ausnahme, wenn die übergebenen Argumente keine gültige URL definieren.

Instanz-Eigenschaften

hash

Eine Zeichenkette, die ein '#' gefolgt vom Fragment-Bezeichner der URL enthält.

host

Eine Zeichenkette, die die Domäne (das heißt den hostname) enthält, gefolgt von (wenn ein Port angegeben wurde) einem ':' und dem port der URL.

hostname

Eine Zeichenkette, die die Domäne der URL enthält.

href

Ein stringifier, der eine Zeichenkette, die die gesamte URL enthält, zurückgibt.

origin Schreibgeschützt

Gibt eine Zeichenkette zurück, die den Ursprung der URL enthält, das heißt ihr Schema, ihre Domäne und ihren Port.

password

Eine Zeichenkette, die das vor dem Domänennamen angegebene Passwort enthält.

pathname

Eine Zeichenkette, die ein anfängliches '/' gefolgt vom Pfad der URL enthält, ohne die Abfragezeichenfolge oder das Fragment.

port

Eine Zeichenkette, die die Portnummer der URL enthält.

protocol

Eine Zeichenkette, die das Protokollschema der URL enthält, einschließlich dem abschließenden ':'.

Eine Zeichenkette, die die Parameterzeichenfolge der URL anzeigt; wenn Parameter angegeben sind, enthält diese Zeichenkette alle von ihnen, beginnend mit dem führenden ?-Zeichen.

searchParams Schreibgeschützt

Ein URLSearchParams-Objekt, das verwendet werden kann, um auf die einzelnen Abfrageparameter in search zuzugreifen.

username

Eine Zeichenkette, die den vor dem Domänennamen angegebenen Benutzernamen enthält.

Statische Methoden

canParse()

Gibt einen Booleschen Wert zurück, der angibt, ob eine aus einer URL-Zeichenkette und optionaler Basis-URL-Zeichenkette definierte URL parsbar und gültig ist.

createObjectURL()

Gibt eine Zeichenkette zurück, die eine eindeutige Blob-URL enthält, das heißt eine URL mit blob: als Schema, gefolgt von einer undurchsichtigen Zeichenkette, die das Objekt im Browser eindeutig identifiziert.

parse()

Erstellt und gibt ein URL-Objekt aus einer URL-Zeichenkette und optionaler Basis-URL-Zeichenkette zurück oder gibt null zurück, wenn die übergebenen Parameter eine ungültige URL definieren.

revokeObjectURL()

Widerruft eine zuvor mit URL.createObjectURL() erstellte Objekt-URL.

Instanz-Methoden

toString()

Gibt eine Zeichenkette zurück, die die gesamte URL enthält. Es ist ein Synonym für URL.href, obwohl es nicht verwendet werden kann, um den Wert zu ändern.

toJSON()

Gibt eine Zeichenkette zurück, die die gesamte URL enthält. Es gibt die gleiche Zeichenkette wie die href-Eigenschaft zurück.

Nutzungshinweise

Der Konstruktor nimmt einen url-Parameter und einen optionalen base-Parameter, der als Basis verwendet wird, wenn der url-Parameter eine relative URL ist.

Beachten Sie, dass im folgenden Fall "dogs" das Dateinamen-Segment ist (weil es keinen abschließenden Schrägstrich hat) und dass die relative URL "cats" relativ zum Verzeichnis-Teil der Basis-URL interpretiert wird, die http://www.example.com/animals/ ist. Weitere Informationen finden Sie unter Relative Referenzen zu einer URL auflösen.

js
const url = new URL("cats", "http://www.example.com/animals/dogs");
console.log(url.hostname); // "www.example.com"
console.log(url.pathname); // "/animals/cats"

Der Konstruktor wird eine Ausnahme auslösen, wenn die URL nicht in eine gültige URL geparst werden kann. Sie können entweder den obigen Code in einem try...catch-Block aufrufen oder die canParse() statische Methode verwenden, um zuerst zu überprüfen, ob die URL gültig ist:

js
if (URL.canParse("cats", "http://www.example.com/animals/dogs")) {
  const url = new URL("cats", "http://www.example.com/animals/dogs");
  console.log(url.hostname); // "www.example.com"
  console.log(url.pathname); // "/animals/cats"
} else {
  console.log("Invalid URL");
}

URL-Eigenschaften können gesetzt werden, um die URL zu konstruieren:

js
url.hash = "tabby";
console.log(url.href); // "http://www.example.com/animals/cats#tabby"

URLs werden gemäß den in RFC 3986 beschriebenen Regeln kodiert. Zum Beispiel:

js
url.pathname = "démonstration.html";
console.log(url.href); // "http://www.example.com/d%C3%A9monstration.html"

Das URLSearchParams-Interface kann verwendet werden, um die Abfragezeichenfolge der URL zu erstellen und zu manipulieren.

Um die Suchparameter von der aktuellen Fenster-URL abzurufen, können Sie Folgendes tun:

js
// https://some.site/?id=123
const parsedUrl = new URL(window.location.href);
console.log(parsedUrl.searchParams.get("id")); // "123"

Die toString()-Methode von URL gibt einfach den Wert der href-Eigenschaft zurück, sodass der Konstruktor verwendet werden kann, um eine URL direkt zu normalisieren und zu kodieren.

js
const response = await fetch(
  new URL("http://www.example.com/démonstration.html"),
);

Spezifikationen

Spezifikation
URL
# url

Browser-Kompatibilität

Siehe auch