Arbeid med URL i JavaScript
I JavaScript må man noen ganger jobbe med
linkadresser. For dette er klassen
URL tiltenkt, som lar en hente og endre
deler av adresser.
La oss se på hvordan den brukes ved å bruke følgende adresse som eksempel:
javascriptlet path = 'http://site.ru:3000/dir/eee/page.html#show?a=1&b=2&c=3';
La oss opprette et objekt av klassen URL ved å
sende adressen vår som en parameter:
javascriptlet url = new URL(path);
La oss se på hvilke egenskaper det opprettede objektet har.
Protokoll
Ved hjelp av egenskapen protocol kan man hente
protokollen:
javascriptlet res = url.protocol;
console.log(res); // vil skrive ut 'http:'
Vert
Ved hjelp av egenskapen host kan man hente
domenenavnet med port:
javascriptlet res = url.host;
console.log(res); // vil skrive ut 'site.ru:3000'
Vertnavn
Ved hjelp av egenskapen hostname kan man hente
domenenavnet:
javascriptlet res = url.hostname;
console.log(res); // vil skrive ut 'site.ru'
Port
Ved hjelp av egenskapen port kan man hente porten:
javascriptlet res = url.port;
console.log(res); // vil skrive ut '3000'
Sti
Ved hjelp av egenskapen pathname kan man
fjerne domenenavnet og få stien:
javascriptlet res = url.pathname;
console.log(res); // vil skrive ut '/dir/eee/page.html'
Hash
Ved hjelp av egenskapen hash kan man hente
hash-verdien:
javascriptlet res = url.hash;
console.log(res); // vil skrive ut '#show'
GET-parametre
Ved hjelp av egenskapen search kan man hente
strengen med GET-parametre:
javascriptlet res = url.search;
console.log(res); // vil skrive ut '?a=1&b=2&c=3'
Ved hjelp av egenskapen searchParams kan man
hente GET-parametrene som et objekt av klassen
URLSearchParams:
javascriptlet res = url.searchParams;
console.log(res); // vil skrive ut et objekt av klassen URLSearchParams