Работа со URL во JavaScript

Во JavaScript понекогаш е потребно да се работи со адреси на врски. За ова е наменета класата URL, која овозможува добивање и менување на дел од адресите.

Да ја погледнеме работата со неа на примерот на следната адреса:

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

Да креираме објект од класата URL, пренесувајќи му го нашиот адрес како параметар:

javascriptlet url = new URL(path);

Да видиме, какви својства има креираниот објект.

Протокол

Со помош на својството protocol може да се добие протоколот:

javascriptlet res = url.protocol;
console.log(res); // ќе испише 'http://'

Хост

Со помош на својството host може да се добие името на доменот со порта:

javascriptlet res = url.host;
console.log(res); // ќе испише 'site.ru:3000'

Име на хостот

Со помош на својството hostname може да се добие името на доменот:

javascriptlet res = url.hostname;
console.log(res); // ќе испише 'site.ru'

Порта

Со помош на својството port може да се добие портата:

javascriptlet res = url.port;
console.log(res); // ќе испише '3000'

Патека

Со помош на својството pathname може да се отфрли името на доменот, добивајќи ја патеката:

javascriptlet res = url.pathname;
console.log(res); // ќе испише '/dir/eee/page.html#show?a=1&b=2&c=3'

Хеш

Со помош на својството hash може да се добие вредноста на хешот:

javascriptlet res = url.hash;
console.log(res); // ќе испише 'show'

GET параметри

Со помош на својството search може да се добие низата од GET параметрите:

javascriptlet res = url.search;
console.log(res); // ќе испише 'a=1&b=2&c=3'

Со помош на својството searchParams може да се добијат GET параметрите во форма на објект од класата URLSearchParams:

javascriptlet res = url.searchParams;
console.log(res); // ќе испише објект од класата URLSearchParams