</> Praktum

Главная / JavaScript / Метод String.includes()

JavaScript · справочник

Метод String.includes()

includes() проверяет, содержит ли строка указанный фрагмент, и возвращает логическое значение. Метод не использует регулярные выражения.

Поиск текста

Сравнение чувствительно к регистру. Для поиска без учёта регистра обе строки приводят к одному виду.

const title = 'Основы JavaScript';
title.includes('Java'); // true
title.toLowerCase().includes('javascript'); // true

Начальная позиция

Второй аргумент задаёт индекс начала поиска. Это бывает полезно, если первая часть строки служебная.

const path = '/docs/javascript/includes';
path.includes('javascript', 6); // true

Частые ошибки

Практика

Сделай фильтр списка уроков по введённой строке без учёта регистра и пробелов по краям.

Связанные темы

Строки · split() · filter()

Поиск текста без неожиданных совпадений

String.includes проверяет точное вхождение подстроки и учитывает регистр. Поэтому «CSS» и «css» — разные запросы. Для пользовательского поиска обе строки обычно приводят к одному регистру и убирают внешние пробелы. Метод не изменяет исходную строку и возвращает boolean.

Второй аргумент определяет позицию, с которой начинается поиск. Если важно проверить только начало или конец, используй startsWith или endsWith — намерение будет понятнее. Для сложных правил, нескольких вариантов написания или границ слов может понадобиться регулярное выражение, но простую задачу не стоит усложнять.

Разберём рабочий пример

const title = "Урок по JavaScript";
const query = "javascript";

const found = title
  .toLocaleLowerCase("ru")
  .includes(query.toLocaleLowerCase("ru").trim());

console.log(found); // true

Не копируй пример вслепую: измени данные, убери одну строку и посмотри, как меняется результат. Такой эксперимент быстрее показывает роль каждой части кода, чем простое чтение.

Проверка перед использованием

  • Учтён регистр символов.
  • Пользовательский ввод очищен через trim.
  • Для начала и конца рассмотрены специальные методы.
  • Регулярное выражение не используется без необходимости.

Попробуй в браузере

Измени код и нажми «Запустить». Результат появится ниже.

Ещё в разделе JavaScript