Arbeiten mit URLs in JavaScript
In JavaScript muss man manchmal mit
Linkadressen arbeiten. Dafür ist die Klasse
URL vorgesehen, die es ermöglicht,
Teile von Adressen zu erhalten und zu ändern.
Sehen wir uns ihre Arbeit am Beispiel der folgenden Adresse an:
let path = 'http://site.ru:3000/dir/eee/page.html#show?a=1&b=2&c=3';
Erstellen wir ein Objekt der Klasse URL, indem wir
ihm unsere Adresse als Parameter übergeben:
let url = new URL(path);
Lassen Sie uns sehen, welche Eigenschaften das erstellte Objekt hat.
Protokoll
Mit der Eigenschaft protocol kann das
Protokoll abgerufen werden:
let res = url.protocol;
console.log(res); // gibt 'http://' aus
Host
Mit der Eigenschaft host kann der
Domainname mit Port abgerufen werden:
let res = url.host;
console.log(res); // gibt 'site.ru:3000' aus
Hostname
Mit der Eigenschaft hostname kann der
Domainname abgerufen werden:
let res = url.hostname;
console.log(res); // gibt 'site.ru' aus
Port
Mit der Eigenschaft port kann der Port abgerufen werden:
let res = url.port;
console.log(res); // gibt '3000' aus
Pfad
Mit der Eigenschaft pathname kann
der Domainname weggelassen werden, um den Pfad zu erhalten:
let res = url.pathname;
console.log(res); // gibt '/dir/eee/page.html#show?a=1&b=2&c=3' aus
Hash
Mit der Eigenschaft hash kann der
Hash-Wert abgerufen werden:
let res = url.hash;
console.log(res); // gibt 'show' aus
GET-Parameter
Mit der Eigenschaft search kann die
Zeichenkette der GET-Parameter abgerufen werden:
let res = url.search;
console.log(res); // gibt 'a=1&b=2&c=3' aus
Mit der Eigenschaft searchParams können
die GET-Parameter als Objekt der Klasse
URLSearchParams abgerufen werden:
let res = url.searchParams;
console.log(res); // gibt ein Objekt der Klasse URLSearchParams aus