Spec-Zone.ru › Deno 1

URLPattern

API URLPattern предоставляет веб-платформенную примитивную возможность сопоставления URL-адресов на основе удобного синтаксиса шаблонов.

Синтаксис основан на path-to-regexp. Поддерживаются подстановочные знаки, именованные группы захвата, регулярные группы и модификаторы групп.

// Specify the pattern as structured data.
const pattern = new URLPattern({ pathname: "/users/:user" });
const match = pattern.exec("/users/joe");
console.log(match.pathname.groups.user); // joe
// Specify a fully qualified string pattern.
const pattern = new URLPattern("https://example.com/books/:id");
console.log(pattern.test("https://example.com/books/123")); // true
console.log(pattern.test("https://deno.land/books/123")); // false
// Specify a relative string pattern with a base URL.
const pattern = new URLPattern("/:article", "https://blog.example.com");
console.log(pattern.test("https://blog.example.com/article")); // true
console.log(pattern.test("https://blog.example.com/article/123")); // false
class URLPattern {
constructor(input: URLPatternInput, baseURL?: string);
readonly hash: string;
readonly hostname: string;
readonly password: string;
readonly pathname: string;
readonly port: string;
readonly protocol: string;
readonly search: string;
readonly username: string;
exec(input: URLPatternInput, baseURL?: string): URLPatternResult | null;
test(input: URLPatternInput, baseURL?: string): boolean;
}

Конструкторы

new URLPattern(input: URLPatternInput, baseURL?: string)

Свойства

hash: string

Строка шаблона для hash.

hostname: string

Строка шаблона для hostname.

password: string

Строка шаблона для password.

pathname: string

Строка шаблона для pathname.

port: string

Строка шаблона для port.

protocol: string

Строка шаблона для protocol.

search: string

Строка шаблона для search.

username: string

Строка шаблона для username.

Методы

exec(input: URLPatternInput, baseURL?: string): URLPatternResult | null

Сопоставить заданный ввод с сохраненным шаблоном.

Ввод может быть предоставлен в виде строки URL (с необязательной базой) или отдельных компонентов в виде объекта.

const pattern = new URLPattern("https://example.com/books/:id");

// Match a url string.
let match = pattern.exec("https://example.com/books/123");
console.log(match.pathname.groups.id); // 123

// Match a relative url with a base.
match = pattern.exec("/books/123", "https://example.com");
console.log(match.pathname.groups.id); // 123

// Match an object of url components.
match = pattern.exec({ pathname: "/books/123" });
console.log(match.pathname.groups.id); // 123
test(input: URLPatternInput, baseURL?: string): boolean

Проверить, соответствует ли заданный ввод сохраненному шаблону.

Ввод может быть предоставлен в виде строки URL (с необязательной базой) или отдельных компонентов в виде объекта.

const pattern = new URLPattern("https://example.com/books/:id");

// Test a url string.
console.log(pattern.test("https://example.com/books/123")); // true

// Test a relative url with a base.
console.log(pattern.test("/books/123", "https://example.com")); // true

// Test an object of url components.
console.log(pattern.test({ pathname: "/books/123" })); // true

© 2018–2022 the Deno authors
https://doc.deno.land/deno/stable/~/URLPattern

Spec-Zone.ru

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