JavaScript URL.hostname — домен адреси
Властивість hostname повертає домен — без порту й без протоколу.
Загальний опис
Різниця з host рівно в одному: host включає порт, якщо той нетиповий, а hostname — ніколи.
Для перевірки «чи це наш домен» брати треба саме hostname: інакше на локальній машині з портом перевірка розвалиться.
Міжнародні домени (кирилицею) повертаються в закодованому вигляді — xn--.... Це не помилка, а стандарт Punycode.
Переглядачі
| Переглядач | ||||||
|---|---|---|---|---|---|---|
| hostname | 32+ | 26+ | 7+ | 19+ | 12+ | - |
| Переглядач | ||||
|---|---|---|---|---|
| hostname | 32+ | yes | yes | 7+ |
Приклади
+ запропонувати свій приклад у пісочниці
Домен без порту — і чому це важливо локально.
const url = new URL('https://css.in.ua:8443/page');
console.log(url.hostname); // 'css.in.ua' — без порту
console.log(url.host); // 'css.in.ua:8443' — із портом
// перевірка домену: hostname надійніший
if (url.hostname === location.hostname) {
console.log('Наш сайт');
}
// кирилиця в домені — Punycode
console.log(new URL('https://приклад.укр').hostname); // 'xn--...'
Коментарі
Коментарів ще немає — будьте першим!