URL
Baseline
Widely available
*
This feature is well established and works across many devices and browser versions. It’s been available across browsers since июль 2015 г..
* Some parts of this feature may have varying levels of support.
Примечание: Эта возможность доступна в 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> # url> |
Совместимость с браузерами
Loading…
Смотрите также
- Полифил для
URLдоступен в core-js - URL API
- Что такое URL-адрес?
- Свойство для получения объекта
URL:URL. URLSearchParams.