Darbas su URL JavaScript
JavaScript kartais tenka dirbti su
nuorodų adresais. Tam skirta klasė
URL, leidžianti gauti ir keisti
adresų dalis.
Pažiūrėkime, kaip su ja dirbti, naudodami šį adresą kaip pavyzdį:
let path = 'http://site.ru:3000/dir/eee/page.html#show?a=1&b=2&c=3';
Sukurkime URL klasės objektą, perduodami
jame mūsų adresą kaip parametrą:
let url = new URL(path);
Pažiūrėkime, kokias savybes turi sukurtas objektas.
Protokolas
Naudojant savybę protocol galima gauti
protokolą:
let res = url.protocol;
console.log(res); // išvests 'http://'
Hostas
Naudojant savybę host galima gauti
domeno vardą su prievadu:
let res = url.host;
console.log(res); // išvests 'site.ru:3000'
Hosto vardas
Naudojant savybę hostname galima gauti
domeno vardą:
let res = url.hostname;
console.log(res); // išvests 'site.ru'
Prievadas
Naudojant savybę port galima gauti prievadą:
let res = url.port;
console.log(res); // išvests '3000'
Kelias
Naudojant savybę pathname galima
atmetus domeno vardą, gauti kelią:
let res = url.pathname;
console.log(res); // išvests '/dir/eee/page.html#show?a=1&b=2&c=3'
Hešas
Naudojant savybę hash galima gauti
hešo reikšmę:
let res = url.hash;
console.log(res); // išvests 'show'
GET parametrai
Naudojant savybę search galima gauti
GET parametrų eilutę:
let res = url.search;
console.log(res); // išvests 'a=1&b=2&c=3'
Naudojant savybę searchParams galima
gauti GET parametrus URLSearchParams klasės objekto pavidalu:
let res = url.searchParams;
console.log(res); // išvests URLSearchParams klasės objektą