Есть ли действительно простой способ начать с полного URL:
document.location.href = "http://aaa.bbb.ccc.com/asdf/asdf/sadf.aspx?blah"
И извлеките только часть узла:
aaa.bbb.ccc.com
Должна быть функция JavaScript, которая делает это надежно, но я не могу ее найти.
javascript
hostname
Дастин Гетц
источник
источник
window.location.origin
в IE9 не определено (по ссылке это IE11 +). Этот ответ помог.Вы можете объединить протокол местоположения и хост:
Для URL, скажем
'http://stackoverflow.com/questions'
, он вернется'http://stackoverflow.com'
источник
Использование
document.location
объекта и егоhost
илиhostname
свойства.источник
Принятый ответ не работал для меня, так как хотел иметь возможность работать с любыми произвольными URL-адресами, а не только с URL текущей страницы.
Посмотрите на
URL
объект :источник
Есть два пути. Первый вариант другого ответа здесь, но этот учитывает порты не по умолчанию:
Но я предпочитаю этот более простой метод (который работает с любой строкой URI):
источник
использование
и для: " http://aaa.bbb.ccc.ddd.com/sadf.aspx?blah "
вы получите: http://aaa.bbb.ccc.ddd.com/
источник
Пытаться
или
источник
Есть еще один хак, который я использую и никогда не видел ни в одном ответе StackOverflow: использование атрибута изображения «src» даст полный базовый путь вашего сайта. Например :
На URL, как
http://domain.com/somesite/index.html
,root
будет установлено значениеhttp://domain.com/somesite/
. Это также работает для localhost или любого действующего базового URL.Обратите внимание, что это приведет к неудачному HTTP-запросу к
$
фиктивному изображению. Вместо этого вы можете использовать существующее изображение, только с небольшими изменениями кода.В другом варианте используется фиктивная ссылка, без побочных эффектов на HTTP-запросы:
Я не проверял это на каждом браузере, все же.
источник
Проверь это:
это вернет имя хоста как
www.domain.com
а также:
вернет доменное имя с портом как
www.example.com:80
Для полной справки проверьте сайт разработчика Mozilla .
источник
Я хотел бы указать что-то. Если кто-то хочет получить весь URL-адрес с нужным мне путем, можно использовать:
источник
Я знаю, что это немного поздно, но я сделал чистую маленькую функцию с небольшим синтаксисом ES6
Это также может быть написано в ES5, как
Конечно, IE не поддерживает
Object.assign
, но в моей работе это не имеет значения.источник
Regex обеспечивает гораздо большую гибкость.
источник