Используется популярный трюк с созданием "виртуального" элемента <a href.../a>, для которого доступны свойства, содержащие в себе информацию о частях указанного URL адреса.
function parseUrl(url) { var a = document.createElement('a'); a.href = url; return a; } console.log(parseUrl('http://example.com:3000/pathname/?search=test#hash').hostname); /* protocol; // => "http:" host; // => "example.com:3000" hostname; // => "example.com" port; // => "3000" pathname; // => "/pathname/" hash; // => "#hash" search; // => "?search=test" origin; // => "http://example.com:3000" */
UPD. Статья на хабре по теме https://habr.com/ru/post/510742/
Внимание! Все действия, описанные выше, вы выполняете на свой страх и риск. Автор не несет никакой ответственности за любой вред, причиненный пользователю или третьим лицам в результате использования материалов, программного обеспечения и другой информации, размещенной на данной странице.
Полезно? Поддержите! Это мотивирует автора к дальнейшим публикациям.