Hola a todos, estoy tratando de usar la función includes
para comparar dos arrays, para saber si coinciden o no, y obtener un true
o false
, tengo el siguiente código:
lista1 = {"gato","perro","borrego","elefante"} // Array con mi listado lista2 = {"gato","perro","borrego","gallo"} // Array 2 con mi listado // Uso un bucle para evaluar los dos arrays pues ambos tendrán la misma longitud for (i=1; i < lista1.length ; i++) { console.log(lista1[i].includes(lista2[i])); }
Al ejecutarlo me aparece error en la consola "Uncaught TypeError: Cannot read property 'includes' of undefined", en cambio si hago la función con dos strings simples funciona :c
Muchas gracias por leer mi pregunta y si pueden ayudarme, mejor.
Saludos
Respuestas
El primer problema que veo es que estás definiendo un "array normal" utilizando la sintaxis de los "arrays asociativos" o "hashes". Deberías cambiar el código por lo siguiente:
lista1 = ["gato", "perro", "borrego", "elefante"]; lista2 = ["gato", "perro", "borrego", "gallo"];
Por otra parte, la función includes() aplicada sobre arrays es todavía experimental, por lo que no funcionará en todas las versiones de todos los navegadores.
@javiereguiluz
Gracias Javi, lo de la sintaxis, me equivoque yo al ponerlo aquí en el foro, pues mi código original es un array de 50 elementos y no quería llenar de texto mi pregunta.
Todo se resolvió al decirme que la función includes
en arrays es experimental, lo pobré en Firefox y me funcionó.
Saludos y gracias por responder, es de mucha ayuda este sitio que forjaste.
@resback