javascript

Comprobar si elemento existe en arreglo de Javascript

Introducción

Veamos hoy cómo comprobar si un valor o elemento existe dentro de un arreglo de Javascript. Recordemos que un arreglo en Javascript es una lista de valores.

En ocasiones, es necesario buscar la posición de determinado elemento, o tal vez sólo comprobar si existe dentro de un array, arreglo, vector o lista. Dicho con otras palabras, veremos cómo checar si un elemento está presente. Recientemente en ES6 se introdujo un nuevo método que veremos a continuación.

Obtener índice de un elemento dentro de un arreglo

Utilizamos indexOf, que yo traduzco como “índice de”. Es fácil, es un método que tienen los arreglos y que recibe el valor a buscar. Devuelve la posición del elemento, o -1 si no lo encuentra. A diferencia de Python, éste no genera ninguna excepción.

var agentes = ["Will Graham", "Clarice Starling", "Alex Cross"];

var indice = agentes.indexOf("Will Graham"); // Buscar índice de Will Graham
//indice es 0

var otroIndice = agentes.indexOf("Thomas Pierce"); //No existe
//otroIndice es -1

Con esto podemos obtener el índice, que recordemos comienza a contarse desde el 0. Es decir, el primer elemento tiene el índice 0, el segundo el 1, y así.

Comprobar si valor existe en arreglo

Anteriormente se utilizaba únicamente indexOf y se comprobaba el resultado del mismo con -1. Es decir, si el índice era -1 entonces no existía. Recientemente se introdujo otro método. Veamos ambos.

Comprobar si existe con indexOf

Tomando el ejemplo de arriba, podemos ver si Thomas Pierce existe así:

var agentes = ["Will Graham", "Clarice Starling", "Alex Cross"];

var indice = agentes.indexOf("Thomas Pierce");

if(indice !== -1){
  console.log("Thomas Pierce está presente");
}else{
  console.log("No encontrado");
}

Sólo comparamos para ver si es -1. En caso de que lo sea, es que no está presente dentro de la lista.

Comprobar si existe con includes

Como lo dije, se ha introducido un método más elegante. Podemos rescribir lo de arriba de esta manera:

var agentes = ["Will Graham", "Clarice Starling", "Alex Cross"];

if(agentes.includes("Thomas Pierce")){
  console.log("Thomas Pierce está presente");
}else{
  console.log("No encontrado");
}

Como el lector puede apreciar, el método o función includes devuelve un booleano. En caso de que exista, devuelve true; y si no, pues devuelve false.

Conclusión

Si necesitamos el índice, usemos indexOf. Si sólo queremos ver si existe, utilizamos includes. Por cierto, lo hicimos con cadenas pero funciona con números igualmente. Y con otros tipos de datos.

Aquí las referencias a indexOf e includes:

Array.indexOf

Array.includes

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Ver comentarios

Entradas recientes

Actualización Plugin ESC POS 3.5.0 – Dithering y respuesta al imprimir

En este post voy a describir las novedades de mi plugin HTTP a ESC POS.…

5 días hace

Leer 10 mil números y ordenar con C

En el ejercicio de programación de hoy vamos a trabajar con ANSI C para leer…

4 semanas hace

Generador de números aleatorios online

Hoy te quiero compartir una herramienta en línea para generar números aleatorios directamente en el…

4 semanas hace

Comprimir PDF con Bot de Telegram

Comprimir un PDF con Telegram es posible gracias a los Bots. Anteriormente en mi blog…

4 semanas hace

MySQL – Guardar combinación de días de la semana

En este post te voy a enseñar a guardar solo algunos días de la semana…

1 mes hace

Guía de inicio rápido para impresora térmica

En este post te enseñaré a usar tu impresora térmica comenzando en el paso de…

2 meses hace

Esta web usa cookies.