Original article: Check if an Item is in an Array in JavaScript – JS Contains with Array.includes()

Puedes usar el método includes()  en JavaScript para verificar si un elemento existe dentro de un arreglo. También puedes usarlo para verificar si un substring existe dentro de una cadena de texto.

Devuelve true si el elemento se encuentra en el arreglo/cadena y false si el elemento no existe.

En este artículo, verás cómo utilizar el método includes() en JavaScript para comprobar si un elemento está en un arreglo, y si un substring existe dentro de una cadena.

Cómo verificar si un elemento está en un arreglo en JavaScript utilizando arreglo.includes()

Esta es la sintaxis para utilizar el método includes() y verificar si un elemento está en un arreglo:

arreglo.includes(elemento, indiceInicial)

Desglosemos la sintaxis anterior:

arreglo representa el nombre del arreglo en el que se buscará para verificar si un elemento existe.

El método includes() recibe dos parámetros: elemento e indiceInicial.

  • elemento es el elemento específico que estás buscando.
  • indiceInicial, que es un parámetro opcional, especifica el índice desde el cual iniciar la búsqueda. Si no incluyes este parámetro, el índice predeterminado será 0 (el primer índice).

Aquí hay algunos ejemplos para mostrar cómo usar el método includes() para verificar si un elemento existe en un arreglo:

const numeros = [ 1, 3, 5, 7];
console.log(numeros.includes(3));
// true

En el ejemplo anterior, creamos un arreglo llamado numeros con cuatro números: 1, 3, 5, 7.

Usando la notación de punto, adjuntamos el método includes() al arreglo numeros.

En el parámetro del método includes(), pasamos 3. Este es el elemento que queremos buscar.

Obtuvimos true porque 3 existe en el arreglo numeros.

Intentemos buscar un número que no existe en el arreglo.

const numeros = [ 1, 3, 5, 7];
console.log(numeros.includes(8));
// false

Como se esperaba, obtuvimos false en el ejemplo anterior porque 8 no es un elemento dentro del arreglo numeros.

Cómo verificar si un elemento está en un arreglo en JavaScript usando arreglo.includes() a partir de un índice especificado

En la última sección, vimos cómo verificar si un elemento existía en un arreglo sin usar el segundo parámetro del método includes().

Como recordatorio, el segundo parámetro se utiliza para especificar el índice desde el que se debe comenzar a buscar un elemento en el arreglo.

En un arreglo los índices comienzan desde 0. Entonces, el primer elemento es 0, el segundo elemento es 1, el tercer elemento es 2, y así sucesivamente.

Aquí hay un ejemplo para mostrar cómo podemos usar el segundo parámetro del método includes():

const numeros = [ 1, 3, 5, 7];
console.log(numeros.includes(3, 2));
// false

El ejemplo anterior devolvió false, aunque teníamos 3 como un elemento en el arreglo.

Aquí está el porqué:

Usando el segundo parámetro, le dijimos al método includes() que buscara el número 3 pero comenzando desde el índice 2: numeros.includes(3, 2).

Este es el arreglo: [1, 3, 5, 7]

Índice 0 = 1.

Índice 1 = 3.

Índice 2 = 5.

Índice 3 = 7.

Entonces, comenzando desde el segundo índice que es 5, solo tenemos 5 y 7 ([5,7]) para buscar. Es por eso que buscar 3 a partir del índice 2 devolvió false.

Si cambias el índice desde el que se debe comenzar la búsqueda a 1, entonces obtendrías true porque 3 se puede encontrar dentro de ese rango. Eso es:

const numeros = [ 1, 3, 5, 7];
console.log(numeros.includes(3, 1));
// true

Cómo verificar si un substring está dentro de otra cadena en JavaScript usando el método includes()

Al igual que en los ejemplos anteriores, debes agregar el método includes() al nombre de la cadena en la que se va a buscar mediante la notación de punto.

Aquí está como se ve la sintaxis:

cadena.includes(substring, indiceInicial)

Aquí hay un ejemplo:

const bio = "Soy un desarrollador web";
console.log(bio.includes("web"));
// true

En el ejemplo anterior, la variable bio tiene un valor de "Soy un desarrollador web".

Usando el método includes (), buscamos el substring "web".

Obtuvimos true porque "web" está en la cadena bio.

También puedes usar el segundo parámetro para especificar dónde comenzará la búsqueda, pero ten en cuenta que cada carácter de la cadena representa un índice y los espacios entre cada substring también representan un índice.

Aquí hay un ejemplo para demostrar esto:

let bio = "Soy un desarrollador web";
console.log(bio.includes("web", 22));
// false

Obtenemos false porque el índice 22 es la "e" en "web".

Comenzando desde el índice 22, la cadena se vería así: "eb". El substring "web" no existe en la cadena, por lo que se devuelve false.

Resumen

En este artículo, hablamos sobre el método includes() en JavaScript. Lo usas para verificar si un elemento existe dentro de un arreglo. También puedes usarlo para verificar si se puede encontrar un substring dentro de otra cadena.

Vimos algunos ejemplos que explicaron su uso para buscar un elemento en un arreglo comenzando desde el primer índice, luego otro ejemplo desde un índice especificado.

Por último, vimos cómo usar el método includes() para verificar si un substring existe dentro de una cadena desde el primer índice y desde un índice especificado.

¡Feliz codificación!