.includes()

Время чтения: меньше 5 мин

Кратко

Секция статьи "Кратко"

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

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

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

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

Пример

Секция статьи "Пример"

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

Массив:

        
          
          const dead = ["Joffrey", "Ned Stark", "Night king"]const isJonDead = dead.includes("Jon Snow")console.log(isJonDead) // напечатает falseconst isJoffreyDead = dead.includes("Joffrey")console.log(isJoffreyDead) // напечатает true
          const dead = ["Joffrey", "Ned Stark", "Night king"]
const isJonDead = dead.includes("Jon Snow")
console.log(isJonDead) // напечатает false

const isJoffreyDead = dead.includes("Joffrey")
console.log(isJoffreyDead) // напечатает true

        
        
          
        
      

Строка:

        
          
          const text =  "Посмотри, ведь это рядом наша панда. Мы бежим с тобой как-будто от гепарда."console.log(text.includes("панда")) // trueconsole.log(text.includes("Обезьяна")) // false// поиск идет с учетом регистраconsole.log(text.includes("Панда")) // false
          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: "" }))
          const phoneContacts = [
  { name: "Иван", lastName: "Таранов" },
  { name: "Игорь", lastName: "Иванов" },
  { name: "Мама", lastName: "" },
]

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

        
        
          
        
      

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