Spec-Zone.ru › Web APIs

URLSearchParams: метод has()

Базовая широко поддерживается *

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.

* Некоторые части этой функции могут иметь различный уровень поддержки.

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

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

Метод has() интерфейса URLSearchParams возвращает логическое значение, указывающее, присутствует ли указанный параметр в параметрах поиска.

Для сопоставления параметров используется имя параметра и необязательное значение. Если указано только имя параметра, метод вернёт true , если в строке запроса есть параметры, соответствующие имени, и false в противном случае. Если указаны имя параметра и значение, метод вернёт true , если параметр соответствует и имени, и значению.

Синтаксис

has(name)
has(name, value)

Параметры

name

Имя параметра для сопоставления.

value

Значение параметра, наряду с заданным именем, для сопоставления.

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

Логическое значение.

Примеры

Проверка наличия параметра с указанным именем

В этом примере показано, как проверить, содержит ли строка запроса параметры с определенным именем.

const url = new URL("https://example.com?foo=1&bar=2&foo=3");
const params = new URLSearchParams(url.search);

// has() returns true if the parameter is in the query string
console.log(`bar?:\t${params.has("bar")}`);
console.log(`bark?:\t${params.has("bark")}`);
console.log(`foo?:\t${params.has("foo")}`);

В выводе ниже показано, присутствуют ли параметры bar, bark, и foo в строке запроса.

bar?:  true
bark?: false
foo?:  true

Проверка наличия параметра с указанным именем и значением

В этом примере показано, как проверить, содержит ли строка запроса параметр, соответствующий как определенному имени, так и значению.

const url = new URL("https://example.com?foo=1&bar=2&foo=3");
const params = new URLSearchParams(url.search);

// has() returns true if a parameter with the matching name and value is in the query string
console.log(`bar=1?:\t${params.has("bar", "1")}`);
console.log(`bar=2?:\t${params.has("bar", "2")}`);
console.log(`foo=4?:\t${params.has("foo", "4")}`);

Только второе значение выше должно быть true, так как соответствует только параметру с именем bar и значением 2.

bar=1?: false
bar=2?: true
foo=4?: false

Если ваш браузер не поддерживает опцию value, метод будет осуществлять соответствие по имени, и все результаты должны быть true.

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

Спецификация
URL
# dom-urlsearchparams-has

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

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
has 49 17 29 36 10.1 49 29 36 10.3 5.0 49
value_parameter 117 117 115 103 17 117 115 78 17 24.0 117

См. также

  • Полифил для URLSearchParams в core-js

© 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/URLSearchParams/has

Spec-Zone.ru

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