Delo z URL v JavaScript

V JavaScriptu je včasih treba delati z naslovi povezav. Za to je namenjen razred URL, ki omogoča pridobivanje in spreminjanje delov naslovov.

Poglejmo si delo z njim na primeru naslednjega naslova:

javascriptlet path = 'http://site.ru:3000/dir/eee/page.html#show?a=1&b=2&c=3';

Ustvarimo objekt razreda URL tako, da mu podamo naš naslov kot parameter:

javascriptlet url = new URL(path);

Poglejmo, katere lastnosti ima ustvarjeni objekt.

Protokol

Z lastnostjo protocol lahko dobimo protokol:

javascriptlet res = url.protocol;
console.log(res); // izpiše 'http://'

Gostitelj

Z lastnostjo host lahko dobimo ime domene z vratmi:

javascriptlet res = url.host;
console.log(res); // izpiše 'site.ru:3000'

Ime gostitelja

Z lastnostjo hostname lahko dobimo ime domene:

javascriptlet res = url.hostname;
console.log(res); // izpiše 'site.ru'

Vrata

Z lastnostjo port lahko dobimo vrata:

javascriptlet res = url.port;
console.log(res); // izpiše '3000'

Pot

Z lastnostjo pathname lahko zavržemo ime domene in dobimo pot:

javascriptlet res = url.pathname;
console.log(res); // izpiše '/dir/eee/page.html#show?a=1&b=2&c=3'

Hash

Z lastnostjo hash lahko dobimo vrednost hasha:

javascriptlet res = url.hash;
console.log(res); // izpiše 'show'

GET parametri

Z lastnostjo search lahko dobimo niz GET parametrov:

javascriptlet res = url.search;
console.log(res); // izpiše 'a=1&b=2&c=3'

Z lastnostjo searchParams lahko dobimo GET parametre v obliki objekta razreda URLSearchParams:

javascriptlet res = url.searchParams;
console.log(res); // izpiše objekt razreda URLSearchParams