Junior
¿Cuál es la diferencia entre los métodos filter y find en JavaScript?
sobes.tech AI
Respuesta de la IA
filter(): Devuelve un nuevo array que contiene todos los elementos del array original para los cuales la función de devolución de llamada devolvió un valor verdadero. Si ningún elemento cumple la condición, se devuelve un array vacío.find(): Devuelve el primer elemento del array original para el cual la función de devolución de llamada devolvió un valor verdadero. Si ningún elemento cumple la condición, se devuelveundefined.
| Método | Valor devuelto | Número de elementos en el resultado |
|---|---|---|
filter() |
Nuevo array (incluso si está vacío) | Cero, uno o varios |
find() |
Valor del primer elemento encontrado o undefined |
Cero (si no se encuentra) o uno |
Ejemplo de filter:
const numbers = [1, 2, 3, 4, 5, 6];
const evenNumbers = numbers.filter(num => num % 2 === 0);
// evenNumbers será [2, 4, 6]
Ejemplo de find:
const users = [
{ id: 1, name: 'Alice' },
{ id: 2, name: 'Bob' },
{ id: 3, name: 'Alice' }
];
const firstAlice = users.find(user => user.name === 'Alice');
// firstAlice será { id: 1, name: 'Alice' }