Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
URL
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since Juli 2015.
* Some parts of this feature may have varying levels of support.
Hinweis: Diese Funktion ist inWeb Workers verfügbar.
DieURL-Schnittstelle wird verwendet, umURLs zu analysieren, zu konstruieren, zu normalisieren und zu kodieren. Sie bietet Eigenschaften, die es Ihnen ermöglichen, die Komponenten einer URL einfach zu lesen und zu ändern.
In der Regel erstellen Sie ein neuesURL-Objekt, indem Sie die URL als Zeichenfolge 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.
In diesem Artikel
Konstruktor
URL()Erstellt und gibt ein
URL-Objekt aus einer URL-Zeichenfolge und optionaler Basis-URL-Zeichenfolge zurück. Gibt einen Fehler aus, wenn die übergebenen Argumente keine gültige URL definieren.
Instanz-Eigenschaften
hashEine Zeichenfolge, die ein
'#'enthält, gefolgt von dem Fragmentbezeichner der URL.hostEine Zeichenfolge, die die Domain (das ist derHostname) enthält, gefolgt von (falls angegeben) einem
':'und demPort der URL.hostnameEine Zeichenfolge, die die Domain der URL enthält.
hrefEinstringifier, der eine Zeichenfolge mit der gesamten URL zurückgibt.
originSchreibgeschütztGibt eine Zeichenfolge zurück, die den Ursprung der URL enthält, also ihr Schema, ihre Domain und ihren Port.
passwordEine Zeichenfolge, die das Passwort enthält, das vor dem Domainnamen angegeben ist.
pathnameEine Zeichenfolge, die ein anfängliches
'/'enthält, gefolgt vom Pfad der URL, ohne Abfragezeichenfolge oder Fragment.portEine Zeichenfolge, die die Portnummer der URL enthält.
protocolEine Zeichenfolge, die das Protokollschema der URL enthält, einschließlich des abschließenden
':'.searchEine Zeichenfolge, die die Parameterzeichenfolge der URL anzeigt; wenn Parameter angegeben sind, enthält diese Zeichenfolge alle, beginnend mit dem führenden
?-Zeichen.searchParamsSchreibgeschütztEin
URLSearchParams-Objekt, das verwendet werden kann, um auf die einzelnen Abfrageparameter insearchzuzugreifen.usernameEine Zeichenfolge, die den Benutzernamen enthält, der vor dem Domainnamen angegeben ist.
Statische Methoden
canParse()Gibt einen booleschen Wert zurück, der anzeigt, ob eine URL, die aus einer URL-Zeichenfolge und optionaler Basis-URL-Zeichenfolge definiert ist, analysierbar und gültig ist.
createObjectURL()Gibt eine Zeichenfolge zurück, die eine eindeutige Blob-URL enthält, das ist eine URL mit
blob:als Schema, gefolgt von einer undurchsichtigen Zeichenfolge, die das Objekt im Browser eindeutig identifiziert.parse()Erstellt und gibt ein
URL-Objekt aus einer URL-Zeichenfolge und optionaler Basis-URL-Zeichenfolge zurück oder gibtnullzurück, wenn die übergebenen Parameter eine ungültigeURLdefinieren.revokeObjectURL()Hebt eine zuvor mit
URL.createObjectURL()erstellte Objekt-URL auf.
Instanz-Methoden
toString()Gibt eine Zeichenfolge mit der gesamten URL zurück. Es ist ein Synonym für
URL.href, kann jedoch nicht zur Änderung des Wertes verwendet werden.toJSON()Gibt eine Zeichenfolge mit der gesamten URL zurück. Es gibt die gleiche Zeichenfolge zurück wie die
href-Eigenschaft.
Nutzungshinweise
Der Konstruktor nimmt einenurl-Parameter sowie einen optionalenbase-Parameter an, um als Basis zu dienen, wenn derurl-Parameter eine relative URL ist:
const url = new URL("../cats", "http://www.example.com/dogs");console.log(url.hostname); // "www.example.com"console.log(url.pathname); // "/cats"Der Konstruktor wird eine Ausnahme auslösen, wenn die URL nicht als gültige URL analysiert werden kann. Sie können entweder den obigen Code in einemtry...catch-Block aufrufen oder diecanParse() statische Methode verwenden, um zuerst zu überprüfen, ob die URL gültig ist:
if (URL.canParse("../cats", "http://www.example.com/dogs")) { const url = new URL("../cats", "http://www.example.com/dogs"); console.log(url.hostname); // "www.example.com" console.log(url.pathname); // "/cats"} else { console.log("Invalid URL");}URL-Eigenschaften können gesetzt werden, um die URL zu konstruieren:
url.hash = "tabby";console.log(url.href); // "http://www.example.com/cats#tabby"URLs werden gemäß den inRFC 3986 gefundenen Regeln kodiert. Zum Beispiel:
url.pathname = "démonstration.html";console.log(url.href); // "http://www.example.com/d%C3%A9monstration.html"DieURLSearchParams-Schnittstelle kann verwendet werden, um die URL-Abfragezeichenfolge zu erstellen und zu manipulieren.
Um die Suchparameter der URL des aktuellen Fensters zu erhalten, können Sie Folgendes tun:
// https://some.site/?id=123const parsedUrl = new URL(window.location.href);console.log(parsedUrl.searchParams.get("id")); // "123"DietoString()-Methode vonURL gibt einfach den Wert derhref-Eigenschaft zurück, sodass der Konstruktor direkt zum Normalisieren und Kodieren einer URL verwendet werden kann.
const response = await fetch( new URL("http://www.example.com/démonstration.html"),);Spezifikationen
| Specification |
|---|
| URL> # url> |