URLPattern:test() 方法
注意:此功能在Web Workers中可用。
test()
方法是 URLPattern
接口的方法,它接受一个 URL 或 URL 部分的对象,并返回一个布尔值,指示给定的输入是否与当前模式匹配。
语法
js
test(input)
test(input, baseURL)
参数
返回值
一个boolean
。
示例
此示例演示如何使用 test()
方法将 URL 与模式匹配。该示例将 test()
调用的结果打印到控制台。
js
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 模式标准 # dom-urlpattern-test |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。
另请参阅
URLPattern
的 polyfill 可在 GitHub 上获得。