JS властивість Document.URL


Загальний опис

Властивість document.URL є однією з ключових характеристик об'єкта Document у мові програмування JavaScript. Вона забезпечує доступ до повного URL-адреси веб-сторінки, на якій виконується поточний документ. Ця властивість відіграє вирішальну роль у розробці веб-додатків, дозволяючи розробникам отримувати та використовувати URL для різноманітних цілей, таких як навігація, аналітика або умовна логіка в залежності від адреси сторінки.

Використання властивості URL варіюється від простого витягування URL-адреси до її аналізу та використання в складних умовах. Простий приклад отримання URL-адреси поточної веб-сторінки може виглядати наступним чином:

console.log(document.URL);

Цей код виведе повний URL поточної сторінки у консоль. Це може бути особливо корисним для визначення поточного розташування користувача на веб-сайті, особливо в сценаріях, де веб-додаток потребує адаптації свого поведінки залежно від URL.

Більш складне застосування може включати розбір URL для отримання специфічних частин адреси, таких як параметри запиту. Для цього можна використовувати об'єкт URL, який був доданий до сучасних веб-стандартів і забезпечує детальний аналіз складових частин URL:

let url = new URL(document.URL);
console.log(url.hostname); // Виводить доменне ім'я
console.log(url.pathname); // Виводить шлях сторінки
console.log(url.searchParams); // Виводить об'єкт URLSearchParams з параметрами запиту

Ці відомості можуть бути використані для реалізації функцій, таких як фільтрація контенту залежно від параметрів URL або редирект на інші сторінки залежно від доменного імені або шляху.

Для веб-розробників важливо розуміти, що властивість document.URL є лише для читання та не може бути змінена безпосередньо. Для зміни URL, що відображається у веб-браузері, необхідно використовувати методи, такі як window.location.href = "новий URL" або history.pushState(), для додавання або зміни стану історії без перезавантаження сторінки.

На практиці, властивість document.URL є незамінним інструментом у розробці сучасних веб-додатків, дозволяючи розробникам ефективно взаємодіяти з URL веб-сторінок. Вона використовується в широкому спектрі задач, від базової навігації та аналітики до складних умовних логік та динамічної модифікації вмісту сторінки на основі параметрів URL. Усвідомлення потенціалу та обмежень цієї властивості є ключовим для створення ефективних і гнучких веб-додатків.

автор: Bond

Порада

Змінювати властивість document.URL напряму не можна, оскільки вона є лише для читання. Якщо вам потрібно змінити адресу сторінки, скористайтеся методами window.location.href або window.location.assign(). Це важливо розуміти для правильного управління навігацією у ваших JavaScript-додатках.

автор: Bond
Порада

Використовуйте document.URL для розбору адреси сторінки на складові. Можна легко отримати доступ до різних частин URL, таких як протокол, хост, шлях, за допомогою нового URL об'єкта: let url = new URL(document.URL);. Після цього, доступ до, наприклад, протоколу можливий через url.protocol. Це зручно для роботи з URL, які потребують детального аналізу або модифікації.

автор: Bond
Порада

Враховуйте, що властивість document.URL завжди повертає повний URL сторінки, включаючи протокол, хост, порт (якщо вказано), шлях та параметри запиту. Це робить її незамінною для скриптів, які потребують роботи з абсолютними URL. Для прикладу, якщо вам потрібно створити посилання на поточну сторінку, можна використати document.URL як значення атрибуту href у тега <a>, щоб забезпечити коректне перенаправлення користувачів.

автор: Bond

Синтаксис

Document.URL

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
1 19 3 3 12 4
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
4.4 18 19 2

Приклади

+ запропонувати свій приклад у пісочниці

У цьому прикладі демонструється, як можна використовувати властивість Document.URL для отримання повного URL поточного веб-документа. Це особливо корисно, коли потрібно вивести або використати URL сторінки в скриптах, наприклад, для визначення поточного місцезнаходження користувача на сайті чи для створення динамічних посилань.

// Вивід поточного URL у консоль
console.log(document.URL);
автор: Bond

У цьому прикладі при натисканні на кнопку "Змінити хеш URL" скрипт змінює хеш частину URL, що дозволяє користувачам взаємодіяти зі сторінкою та бачити, як змінюється URL. Такий підхід може бути корисним для односторінкових додатків (SPA), де зміна хешу в URL може використовуватися для навігації між різними частинами додатку без перезавантаження сторінки.

автор: Bond

У цьому складнішому прикладі показано, як можна використати document.URL для перевірки, чи належить поточний URL до певного домену. Це корисно у випадках, коли потрібно виконати певні дії або показати специфічний контент залежно від домену, на якому знаходиться користувач.

// Перевірка належності поточного URL до певного домену
if (document.URL.includes("example.com")) {
    console.log("Ви перебуваєте на сайті example.com");
} else {
    console.log("Цей сайт не є example.com");
}
автор: Bond

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле саме підкаже шляхи, а хибний підкреслить хвилею.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле саме підкаже шляхи, а хибний підкреслить хвилею.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле саме підкаже шляхи, а хибний підкреслить хвилею.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле саме підкаже шляхи, а хибний підкреслить хвилею.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Зворотний зв'язок
Вхід