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.