DEV Community

Nahuel Segovia
Nahuel Segovia

Posted on

Métodos y funciones para arrays en Javascript.

A partir de las versiones de ES6 se agregaron varias funcionalidades y métodos que sirven para no rompernos tanto la cabeza, o por lo menos hace el código más legible, sobre todo cuando agarramos código de otro y no entendemos que es lo que está haciendo, dejo algunas cosas interesantes que estoy usando últimamente para prescindir de hacer cosas poco legibles.

1- Prescindir del for de las versiones anteriores.

Ahora es mejor usar for of, ya que vamos a ahorrarnos quizá dolores de cabeza para entender que estamos haciendo con o en el ciclo, ejemplo:

let usuarios = ['Usuario1', 'Usuario2', 'Usuario3', 'Usuario4', 'Usuario5']

for(let recorrerNombres of usuarios){
      console.log(recorrerNombres)
}
Enter fullscreen mode Exit fullscreen mode

Esto nos devuelve cada elemento del array sin la necesidad de usar un contador.

=>
Usuario1
Usuario2
Usuario3
Usuario4
Usuario5
Enter fullscreen mode Exit fullscreen mode

Peeero, que pasa cuando además de obtener el elemento, también necesitamos obtener el índice? En ese caso entra en juego forEach, esto ya es un método, y se utiliza así:

let usuarios = ['Usuario1', 'Usuario2', 'Usuario3', 'Usuario4', 'Usuario5']

usuarios.forEach((elemento, indice) =>{
    console.log(elemento)
    console.log(indice)
})
Enter fullscreen mode Exit fullscreen mode
=>
Usuario1
0
Usuario2
1
Usuario3
2
Usuario4
3
Usuario5
4
Enter fullscreen mode Exit fullscreen mode

2 - Recorrer arrays con condiciones de búsqueda:

A veces necesitamos comparar si existe o no existe tal elemento adentro de un array, o incluso su índice.
Un ejemplo sería un botón que elimine a un de este foro con un click, para eso tendríamos que recorrer todos los usuarios y encontrar la coincidencia en base a la condición que impusimos:

let usuarios = ['Usuario1', 'Usuario2', 'Usuario3', 'Usuario4', 'Usuario5']

usuarios.some(elementos => {
  if(elementos === 'Usuario2'){
    console.log('Usuario eliminado')
 }
})

PD: El método some() solo busca que se cumpla una sola condicion, por lo que encontrar un solo elemento le basta.
Enter fullscreen mode Exit fullscreen mode

Pero también podemos no solo encontrar una coincidencia adentro del array, sino varias en todos los elementos, esto lo podemos hacer con el método every():

let usuarios = ['Usuario1', 'Usuario2', 'Usuario3', 'Usuario4', 'Usuario5']

usuarios.every(elementos => {
 if(elementos.includes('Usu')){
    console.log(`Todos los elementos contienen "Usu"`);
 }
})
Enter fullscreen mode Exit fullscreen mode
=>
Todos los elementos contienen "Usu"
Enter fullscreen mode Exit fullscreen mode

Discussion (0)