String.prototype.includes()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2015.

Метод includes() значений String проверяет с учётом регистра, содержит ли строка заданную подстроку, и возвращает, соответственно true или false.

Интерактивный пример

const sentence = "The quick brown fox jumps over the lazy dog.";

const word = "fox";

console.log(
  `The word "${word}" ${
    sentence.includes(word) ? "is" : "is not"
  } in the sentence`,
);
// Expected output: "The word "fox" is in the sentence"

Синтаксис

js
includes(searchString)
includes(searchString, position)

Параметры

searchString

Подстрока для поиска. Не может быть регулярным выражением. Все значения, не являющиеся регулярными выражениями, приводятся к строкам, поэтому при отсутствии параметра или передаче значения undefined метод includes() будет искать подстроку "undefined", что редко бывает полезно.

position Необязательный

Позиция, с которой начинается поиск searchString. (По умолчанию 0.)

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

true, если искомая подстрока была найдена в данной строке (в том числе когда searchString является пустой строкой), и false в противном случае.

Исключения

TypeError

Возникает если searchString является регулярным выражением.

Описание

Этот метод позволяет определять, содержит ли строка другую строку.

Чувствительность к регистру символов

Метод includes() является регистрозависимым. Например, следующее выражение вернёт false:

js
"Синий кит".includes("синий"); // false

Для обхода этого ограничения можно преобразовать обе строки в нижний регистр:

js
"Синий кит".toLowerCase().includes("синий"); // true

Примеры

Использование includes()

js
const str = "Быть или не быть, вот в чём вопрос.";

console.log(str.includes("Быть")); // true
console.log(str.includes("вопрос")); // true
console.log(str.includes("Гамлет")); // false
console.log(str.includes("Быть", 1)); // false
console.log(str.includes("БЫТЬ")); // false
console.log(str.includes("")); // true

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

Specification
ECMAScript® 2025 Language Specification
# sec-string.prototype.includes

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

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
includes

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Uses a non-standard name.
Has more compatibility info.

Смотрите также