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: 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 funktioniert, indem es Eigenschaften bereitstellt, die es ermöglichen, die Komponenten einer URL einfach zu lesen und zu ändern.
Normalerweise erstellen Sie ein neues URL
-Objekt, indem Sie die URL als String beim Aufrufen 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 einem URL-String und optionalem Basis-URL-String zurück. Wirft eine Ausnahme, wenn die übergebenen Argumente keine gültige URL definieren.
Instanz-Eigenschaften
hash
-
Ein String, der ein
'#'
gefolgt vom Fragment-Identifier der URL enthält. host
-
Ein String, der die Domain (das ist der Hostname) gefolgt von (falls ein Port angegeben wurde) einem
':'
und dem Port der URL enthält. hostname
-
Ein String, der die Domain der URL enthält.
href
-
Ein Stringifier, der einen String enthält, der die gesamte URL darstellt.
origin
Schreibgeschützt-
Gibt einen String zurück, der den Ursprung der URL enthält, das heißt ihr Schema, ihre Domain und ihren Port.
password
-
Ein String, der das Passwort enthält, das vor dem Domainnamen angegeben ist.
pathname
-
Ein String, der ein anfängliches
'/'
gefolgt vom Pfad der URL enthält, ohne den Query-String oder das Fragment. port
-
Ein String, der die Portnummer der URL enthält.
protocol
-
Ein String, der das Protokollschema der URL enthält, einschließlich dem abschließenden
':'
. search
-
Ein String, der die Parameterzeichenkette der URL angibt; falls Parameter vorhanden sind, enthält dieser String alle mit dem führenden
?
Zeichen beginnend. searchParams
Schreibgeschützt-
Ein
URLSearchParams
Objekt, das verwendet werden kann, um auf die einzelnen Abfrageparameter insearch
zuzugreifen. username
-
Ein String, der den Benutzernamen enthält, der vor dem Domainnamen angegeben ist.
Statische Methoden
canParse()
-
Gibt einen booleschen Wert zurück, der angibt, ob eine aus einem URL-String und optionalem Basis-URL-String definierte URL analysiert und gültig ist.
createObjectURL()
-
Gibt einen String zurück, der eine eindeutige Blob-URL enthält, das heißt, eine URL mit
blob:
als Schema, gefolgt von einem undurchsichtigen String, der das Objekt im Browser eindeutig identifiziert. parse()
-
Erstellt und gibt ein
URL
Objekt aus einem URL-String und optionalem Basis-URL-String zurück oder gibtnull
zurück, wenn die übergebenen Parameter eine ungültigeURL
definieren. revokeObjectURL()
-
Widerruft eine zuvor mit
URL.createObjectURL()
erstellte Objekt-URL.
Instanz-Methoden
toString()
-
Gibt einen String zurück, der die gesamte URL enthält. Es ist ein Synonym für
URL.href
, obwohl der Wert damit nicht geändert werden kann. toJSON()
-
Gibt einen String zurück, der die gesamte URL enthält. Es gibt denselben String zurück wie die
href
Eigenschaft.
Verwendungshinweise
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 in eine gültige URL geparst werden kann. Sie können den obigen Code entweder in einem try...catch
Block aufrufen oder die canParse()
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"); //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 in RFC 3986 gefundenen Regeln 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 URL des aktuellen Fensters 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 einfach 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