URL
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
io error: No such file or directory (os error 2) (/home/runner/work/yari/yari/mdn/translated-content/files/ru/web/api/url_api/index.md)
Примечание: Эта возможность доступна в Web Workers.
Интерфейс URL
используется для разбора, создания, нормализации и кодирования URL-адресов. Он предоставляет свойства, которые позволяют легко читать и изменять части URL-адреса.
Для создания объекта URL
нужно вызвать конструктор, передав ему строку с абсолютным или относительным URL-адресом в качестве аргумента. В случае с относительным адресом в конструктор также нужно передать базовый адрес вторым аргументом. После этого вы получите доступ к частям URL-адреса для их чтения или модификации.
В случае, когда браузер не поддерживает URL()
конструктор, вы можете получить доступ к объекту URL через URL
свойство интерфейса Window
. Проверьте, не нуждается ли какой-либо из ваших целевых браузеров в этом префиксе.
Примечание: Эта возможность доступна в Web Workers.
Конструктор
new URL()
-
Создаёт и возвращает объект URL из указанного абсолютного адреса или пути и базового адреса.
Свойства
hash
-
Строка типа
USVString
. Содержит идентификатор фрагмента и символ'#'
в начале строки. host
-
Строка типа
USVString
. Содержит доменное имя (hostname) за которым следует (если был указан порт) символ':'
и номер порта. hostname
-
Строка типа
USVString
. Содержит доменное имя. href
-
Строка типа
USVString
. Содержит полный URL-адрес. origin
Только для чтения-
Строка типа
USVString
. Содержит схему (протокол), доменное имя и номера порта. password
-
Строка типа
USVString
. Содержит пароль, указанный перед доменным именем. pathname
-
Строка типа
USVString
. Содержит относительный пусть и символ'/'
в начале строки. Параметры запроса и идентификатор фрагмента не входят в эту строку. port
-
Строка типа
USVString
. Содержит номер порта. protocol
-
Строка типа
USVString
. Содержит название протокола и символ':'
на конце. search
-
Строка типа
USVString
. Содержит параметры запроса. Включает в себя все параметры, которые были указаны и начинается с символа'?'
. searchParams
Только для чтения-
Объект
URLSearchParams
. Позволяет получить доступ к каждому параметру запроса по отдельности. username
-
Строка типа
USVString
. Содержит имя пользователя указанное перед именем домена.
Методы
toString()
-
Возвращает строку типа
USVString
, содержащую полный URL-адрес. Возвращаемое значение аналогично значению свойстваURL.href
. Разница лишь в том, что при помощи этого метода нельзя изменить значение URL-адреса. toJSON()
-
Возвращает строку типа
USVString
, содержащую полный URL-адрес. Возвращаемое значение аналогично значению свойстваURL.href
.
Статические методы
createObjectURL()
-
Возвращает строку типа
DOMString
, содержащую уникальный URL-адресBlob
объекта. Этот адрес предоставляет из себя строку сblob:
в качестве схемы, за которой идёт строка однозначно идентифицирующаяBlob
объект в браузере. revokeObjectURL()
-
Отменяет URL созданный при помощи
URL.createObjectURL()
.
Примечания по использованию
Конструктор принимает один обязательный параметр — url
и один необязательный параметр — base
, который будет использован в качестве «основы», если параметр url
это относительный URL-адрес:
const url = new URL("../cats", "http://www.example.com/dogs");
console.log(url.hostname); // "www.example.com"
console.log(url.pathname); // "/cats"</pre>
Вы можете задавать значения свойствам объекта URL, чтобы изменять URL-адрес:
url.hash = "tabby";
console.log(url.href); // "http://www.example.com/cats#tabby"
URL-адреса кодируются согласно стандарту RFC 3986. Например:
url.pathname = "démonstration.html";
console.log(url.href); // "http://www.example.com/d%C3%A9monstration.html"
Интерфейс URLSearchParams
можно использовать для работы с параметрами запроса.
Например, следующим образом можно получить параметры запроса URL-адреса текущей веб-страницы:
// https://some.site/?id=123
const parsedUrl = new URL(window.location.href);
console.log(parsedUrl.searchParams.get("id")); // "123"
Метод toString()
лишь возвращает значение свойства href
. Благодаря этому, конструктор URL
можно использовать для нормализации и кодирования URL-адреса.
const response = await fetch(
new URL("http://www.example.com/démonstration.html"),
);
Спецификации
Specification |
---|
URL Standard # url |
Совместимость с браузерами
BCD tables only load in the browser
Смотрите также
- Полифил для
URL
доступен в core-js - URL API
- Что такое URL-адрес?
- Свойство для получения объекта
URL
:URL
. URLSearchParams
.