URL:n käsittely JavaScriptissä

JavaScriptissä on joskus tarpeen käsitellä linkkien osoitteita. Tätä varten on tarkoitettu luokka URL, jonka avulla voidaan saada ja muuttaa osoitteiden osia.

Katsotaan sen käyttöä seuraavan osoitteen esimerkillä:

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

Luodaan olio luokasta URL antamalla sille parametrina osoitteemme:

javascriptlet url = new URL(path);

Katsotaan, mitä ominaisuuksia luodulla oliolla on.

Protokolla

Ominaisuudella protocol voidaan saada protokolla:

javascriptlet res = url.protocol;
console.log(res); // tulostaa 'http://'

Isäntä

Ominaisuudella host voidaan saada verkkotunnus portin kanssa:

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

Isännän nimi

Ominaisuudella hostname voidaan saada verkkotunnus:

javascriptlet res = url.hostname;
console.log(res); // tulostaa 'site.ru'

Portti

Ominaisuudella port voidaan saada portti:

javascriptlet res = url.port;
console.log(res); // tulostaa '3000'

Polku

Ominaisuudella pathname voidaan poistaa verkkotunnuksen nimi saaden polun:

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

Tiiviste

Ominaisuudella hash voidaan saada tiivisteen arvo:

javascriptlet res = url.hash;
console.log(res); // tulostaa 'show'

GET-parametrit

Ominaisuudella search voidaan saada GET-parametrien merkkijono:

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

Ominaisuudella searchParams voidaan saada GET-parametrit oliona luokasta URLSearchParams:

javascriptlet res = url.searchParams;
console.log(res); // tulostaa URLSearchParams-luokan olion