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