URL
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.
Hinweis: Dieses Feature ist verfügbar in Web Workers.
Das URL
-Interface wird verwendet, um URLs zu parsen, zu erstellen, zu normalisieren und zu kodieren. Es stellt Eigenschaften bereit, die es Ihnen ermöglichen, die Komponenten einer URL leicht zu lesen und zu ändern.
Normalerweise erstellen Sie ein neues URL
-Objekt, indem Sie die URL als Zeichenkette beim Aufruf des Konstruktors angeben oder indem Sie eine relative URL und eine Basis-URL bereitstellen. Sie können dann die geparsten 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. Löst eine Ausnahme aus, wenn die übergebenen Argumente keine gültige URL definieren.
Instanz-Eigenschaften
hash
-
Eine Zeichenkette, die ein
'#'
gefolgt vom Fragmentbezeichner der URL enthält. host
-
Eine Zeichenkette, die die Domain (also der Hostname) gefolgt von (falls ein Port angegeben wurde) einem
':'
und dem Port der URL enthält. hostname
-
Eine Zeichenkette, die die Domain der URL enthält.
href
-
Ein stringifier, der eine Zeichenkette zurückgibt, die die gesamte URL enthält.
origin
Nur lesbar-
Gibt eine Zeichenkette zurück, die den Ursprung der URL enthält, d. h. ihr Schema, ihre Domain und ihren Port.
password
-
Eine Zeichenkette, die das vor dem Domainnamen angegebene Passwort enthält.
pathname
-
Eine Zeichenkette, die ein anfängliches
'/'
, gefolgt vom Pfad der URL, nicht einschließlich der Abfragezeichenfolge oder des Fragments enthält. port
-
Eine Zeichenkette, die die Portnummer der URL enthält.
protocol
-
Eine Zeichenkette, die das Protokollschema der URL enthält, einschließlich des abschließenden
':'
. search
-
Eine Zeichenkette, die die Parameterzeichenfolge der URL angibt; wenn Parameter angegeben sind, enthält diese Zeichenkette alle, beginnend mit dem führenden
?
-Zeichen. searchParams
Nur lesbar-
Ein
URLSearchParams
-Objekt, mit dem die einzelnen insearch
gefundenen Abfrageparameter zugegriffen werden kann. username
-
Eine Zeichenkette, die den vor dem Domainnamen 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 parsebar und gültig ist.
createObjectURL()
-
Gibt eine Zeichenkette zurück, die eine eindeutige Blob-URL enthält, d. h. 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 gibtnull
zurück, wenn die übergebenen Parameter eine ungültigeURL
definieren. revokeObjectURL()
-
Hebt eine zuvor mit
URL.createObjectURL()
erstellte Objekt-URL auf.
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 zurück wie die
href
-Eigenschaft.
Hinweise zur Verwendung
Der Konstruktor nimmt einen url
-Parameter und einen optionalen base
-Parameter, der als Basis verwendet wird, wenn der url
-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 zu einer gültigen URL geparst werden kann. Sie können den obigen Code entweder in einem try...catch
-Block aufrufen oder die statische Methode canParse()
verwenden, um zuerst zu prü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"); //Invalid URL
}
URL-Eigenschaften können festgelegt werden, um die URL zu erstellen:
url.hash = "tabby";
console.log(url.href); // "http://www.example.com/cats#tabby"
URLs werden gemäß den Regeln in RFC 3986 kodiert. Zum Beispiel:
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 der aktuellen Fenster-URL zu erhalten, können Sie dies tun:
// 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 nur den Wert der href
-Eigenschaft zurück, sodass der Konstruktor direkt verwendet werden kann, um eine URL zu normalisieren und zu kodieren.
const response = await fetch(
new URL("http://www.example.com/démonstration.html"),
);
Spezifikationen
Specification |
---|
URL Standard # url |
Browser-Kompatibilität
BCD tables only load in the browser