Spec-Zone.ru › Web APIs

URLPattern: метод test()

Ограниченная доступность

Эта функция не относится к Baseline, так как она не работает в некоторых из наиболее широко используемых браузеров.

  • Узнать больше
  • Полная совместимость
  • Отправить отзыв

Экспериментальная функция: Это экспериментальная технология
Перед использованием в продакшене тщательно проверьте таблицу совместимости с браузерами.

Примечание: Эта функция доступна в Web Workers.

Метод test() интерфейса URLPattern принимает URL или объект с частями URL и возвращает булево значение, указывающее, соответствует ли переданный ввод текущему шаблону.

Синтаксис

test(input)
test(input, baseURL)

Параметры

input

URL или части URL для проверки соответствия. Это может быть строка или объект, предоставляющий отдельные части URL. Члены объекта могут быть любыми из protocol, username, password, hostname, port, pathname, search, hash, или baseURL. Пропущенные части в объекте будут обрабатываться как пустые строки. Если ввод не может быть распарсен или указан относительный URL без базового, метод вернёт null.

baseURL Необязательно

Строка, представляющая базовый URL, используемый в тех случаях, когда input является относительным URL. Если не указано, по умолчанию используется undefined. Если этот параметр не может быть распарсен, метод вернет false.

Возвращаемое значение

Значение типа boolean.

Примеры

В этом примере показано, как использовать метод test() для проверки соответствия URL шаблону. Пример выводит результат вызовов test() в консоль.

const pattern = new URLPattern("http{s}?://*.example.com/books/:id");

// Absolute URL strings
console.log(pattern.test("https://store.example.com/books/123")); // true
console.log(pattern.test("https://example.com/books/123")); // false

// Relative URL strings
console.log(pattern.test("/books/123", "http://store.example.com")); // true
console.log(pattern.test("/books/123", "data:text/plain,hello world!")); // false
console.log(pattern.test("/books/123")); // false

// Structured objects
console.log(
  pattern.test({
    pathname: "/books/123",
    baseURL: "http://store.example.com",
  }),
); // true
console.log(
  pattern.test({
    protocol: "https",
    hostname: "store.example.com",
    pathname: "/books/123",
  }),
); // true
console.log(
  pattern.test({
    protocol: "file",
    hostname: "store.example.com",
    pathname: "/books/123",
  }),
); // false

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

Спецификация
URL Pattern
# dom-urlpattern-test

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

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на IOS Samsung Internet WebView Android
test 95 95 Нет 81 Нет 95 Нет 67 Нет 17.0 95

См. также

  • Полифилл URLPattern доступен на GitHub

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/URLPattern/test

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API