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. Содержит название протокола и символ ':' на конце.

Строка типа 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-адрес:

js
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-адрес:

js
url.hash = "tabby";
console.log(url.href); // "http://www.example.com/cats#tabby"

URL-адреса кодируются согласно стандарту RFC 3986. Например:

js
url.pathname = "démonstration.html";
console.log(url.href); // "http://www.example.com/d%C3%A9monstration.html"

Интерфейс URLSearchParams можно использовать для работы с параметрами запроса.

Например, следующим образом можно получить параметры запроса URL-адреса текущей веб-страницы:

js
// https://some.site/?id=123
const parsedUrl = new URL(window.location.href);
console.log(parsedUrl.searchParams.get("id")); // "123"

Метод toString() лишь возвращает значение свойства href. Благодаря этому, конструктор URL можно использовать для нормализации и кодирования URL-адреса.

js
const response = await fetch(
  new URL("http://www.example.com/démonstration.html"),
);

Спецификации

Specification
URL Standard
# url

Совместимость с браузерами

BCD tables only load in the browser

Смотрите также