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į:
javascriptlet 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ą:
javascriptlet url = new URL(path);
Pažiūrėkime, kokias savybes turi sukurtas objektas.
Protokolas
Naudojant savybę protocol galima gauti
protokolą:
javascriptlet res = url.protocol;
console.log(res); // išvests 'http://'
Hostas
Naudojant savybę host galima gauti
domeno vardą su prievadu:
javascriptlet res = url.host;
console.log(res); // išvests 'site.ru:3000'
Hosto vardas
Naudojant savybę hostname galima gauti
domeno vardą:
javascriptlet res = url.hostname;
console.log(res); // išvests 'site.ru'
Prievadas
Naudojant savybę port galima gauti prievadą:
javascriptlet res = url.port;
console.log(res); // išvests '3000'
Kelias
Naudojant savybę pathname galima
atmetus domeno vardą, gauti kelią:
javascriptlet 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ę:
javascriptlet res = url.hash;
console.log(res); // išvests 'show'
GET parametrai
Naudojant savybę search galima gauti
GET parametrų eilutę:
javascriptlet 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:
javascriptlet res = url.searchParams;
console.log(res); // išvests URLSearchParams klasės objektą