В некоторых случаях необходимо узнать локацию пользователя н странице. Нет смысла приводить примеры для чего, у каждого свои задачи. Так вот JS обладает стандартными операторами позволяющими работать с url страницы. Он позволят как взять свойства самой страницы, так и "заглянуть глубже", узнав имя host, номер порта URL-адреса, строку, содержащую каноническую форму происхождения определенного местоположения и т.д. Все это выполняется с помощью оператора location.

 

Свойства

Location.ancestorOrigins
Статический объект DOMStringList, содержащий в обратном порядке источники всех родительских контекстов просмотра документа, связанного с данным Locationобъектом.

Location.href
Строковый преобразователь , возвращающий строку, содержащую полный URL-адрес. При изменении связанный документ переходит на новую страницу. Он может быть установлен из источника, отличного от связанного документа.

Location.protocol
Строка, содержащая схему протокола URL-адреса, включая окончательный ':'.

Location.host
Строка, содержащая хост, то есть имя хоста , a ':'и порт URL-адреса.

Location.hostname
Строка, содержащая домен URL.

Location.port
Строка, содержащая номер порта URL-адреса.

Location.pathname
Строка, содержащая инициал '/', за которым следует путь URL-адреса, не включая строку запроса или фрагмент.

Location.search
Строка, '?'за которой следуют параметры или «строка запроса» URL-адреса. Современные браузеры предоставляют URLSearchParams и URL.searchParams , чтобы упростить анализ параметров из строки запроса.

Location.hash
Строка, содержащая за '#'которым следует идентификатор фрагмента URL-адреса.

Location.origin Только чтение
Возвращает строку, содержащую каноническую форму происхождения определенного местоположения.

Методы

Location.assign()
Загружает ресурс по URL-адресу, указанному в параметре.

Location.reload()
Перезагружает текущий URL-адрес, как кнопка «Обновить».

Location.replace()
Заменяет текущий ресурс ресурсом по указанному URL-адресу (перенаправляет на указанный URL-адрес). Отличие от assign()метода и установки hrefсвойства заключается в том, что после использования replace()текущая страница не будет сохранена в сеансе History, то есть пользователь не сможет использовать кнопку « Назад » для перехода к ней.

Location.toString()
Возвращает строку, содержащую весь URL. Это синоним для Location.href, хотя его нельзя использовать для изменения значения.

Пример вывода url и свойств

Смотреть код