Метод .includes()

Метод .includes()


Кратко

Этот метод определён у массивов и строк.

Для массивов: проверяет, есть ли искомый элемент в массиве.

Для строк: проверяет, есть ли искомая подстрока в строке.

Возвращает true, если искомый элемент нашёлся и false — если нет


Пример 

Метод принимает один аргумент — значение, которое нужно проверить.

Массив:

const dead = ['Джофри', 'Нед Старк', 'Король ночи']
const isJonDead = dead.includes('Джон Сноу')
console.log(isJonDead)
// false

const isJoffreyDead = dead.includes('Джофри')
console.log(isJoffreyDead)
// true

Строка:

const text =
  'Посмотри, ведь это рядом наша панда. Мы бежим с тобой как-будто от гепарда.'

console.log(text.includes('панда'))
// true

console.log(text.includes('Обезьяна'))
// false

// поиск идет с учетом регистра
console.log(text.includes('Панда'))
// false

На практике 

Николай Лопин советует

🛠 Используйте метод, когда нужно убедиться в том, что объект находится в массиве. Например, чтобы не добавить одно и то же значение дважды.

Открыть демо в новой вкладке

🛠 Будьте внимательны при передаче в includes() объектов. Если два объекта выглядят одинаково, это не обязательно один объект, потому что объекты хранятся по ссылке


const phoneContacts = [
  { name: 'Иван', lastName: 'Таранов' },
  { name: 'Игорь', lastName: 'Иванов' },
  { name: 'Мама', lastName: '' },
]

console.log(phoneContacts.includes(
  { name: 'Мама', lastName: '' }
))
// false

Здесь console.log() выведет false, так как мы создали новый объект, хотя он выглядит так же как и тот, что в массиве.



Report Page