Arbeta med URL i JavaScript
I JavaScript behöver man ibland arbeta med
länkadresser. För detta är klassen
URL avsedd, vilket gör det möjligt att få och ändra
delar av adresser.
Låt oss se hur den fungerar med exemplet på följande adress:
javascriptlet path = 'http://site.ru:3000/dir/eee/page.html#show?a=1&b=2&c=3';
Låt oss skapa ett objekt av klassen URL, genom att skicka
vår adress som en parameter:
javascriptlet url = new URL(path);
Låt oss se vilka egenskaper det skapade objektet har.
Protokoll
Med egenskapen protocol kan du få
protokollet:
javascriptlet res = url.protocol;
console.log(res); // skriver ut 'http:'
Värd
Med egenskapen host kan du få
domännamnet med port:
javascriptlet res = url.host;
console.log(res); // skriver ut 'site.ru:3000'
Värdnamn
Med egenskapen hostname kan du få
domännamnet:
javascriptlet res = url.hostname;
console.log(res); // skriver ut 'site.ru'
Port
Med egenskapen port kan du få porten:
javascriptlet res = url.port;
console.log(res); // skriver ut '3000'
Sökväg
Med egenskapen pathname kan du
utelämna domännamnet och få sökvägen:
javascriptlet res = url.pathname;
console.log(res); // skriver ut '/dir/eee/page.html'
Hash
Med egenskapen hash kan du få
hash-värdet:
javascriptlet res = url.hash;
console.log(res); // skriver ut '#show'
GET-parametrar
Med egenskapen search kan du få
strängen med GET-parametrar:
javascriptlet res = url.search;
console.log(res); // skriver ut '?a=1&b=2&c=3'
Med egenskapen searchParams kan du
få GET-parametrarna som ett objekt av klassen
URLSearchParams:
javascriptlet res = url.searchParams;
console.log(res); // skriver ut ett objekt av klassen URLSearchParams