🚀 Diferenças entre os métodos .some() e .every() em JavaScript
No dia a dia de quem trabalha com arrays em JavaScript, entender bem esses dois métodos pode elevar muito a qualidade do código.
Ambos são funções de alta ordem que retornam valores booleanos, mas com propósitos diferentes.
🔍 O que é o .some()?
O método .some() verifica se pelo menos um elemento do array satisfaz uma condição.
Em outras palavras: existe algum item que atende ao critério?
- ✔ retorna true assim que encontra o primeiro elemento válido
- ✔ interrompe a execução, otimizando performance
- ✔ retorna false se nenhum elemento passar no teste
const nums = [5, 10, 15];
const resultado = nums.some(n => n > 10);
// true
✅ O que é o .every()?
Já o método .every() valida se todos os elementos do array atendem a uma condição.
Ou seja: todos os itens passam nesse teste?
- ✔ retorna false ao encontrar o primeiro elemento inválido
- ✔ retorna true apenas se todos passarem
- ✔ também interrompe a execução antecipadamente
const nums = [5, 10, 15];
const resultado = nums.every(n => n > 3);
// true
⚖️ Principais diferenças
- 🔹 .some() exige apenas um elemento válido
- 🔹 .every() exige que todos os elementos sejam válidos
Resumindo:
- 🔹 .some(): existe pelo menos um?
- 🔹 .every(): todos são?
Ambos não modificam o array original e são ideais para validações rápidas e legíveis.
💡 Quando usar cada um?
Use .some() quando:
- 🔹 precisa verificar existência, como usuário ativo ou item válido
Use .every() quando:
- 🔹 precisa garantir consistência total, como validação de formulário
🔥 Conclusão
Dominar .some() e .every() é essencial para escrever código mais declarativo, limpo e eficiente.
Eles transformam loops complexos em expressões simples e diretas, algo essencial no desenvolvimento moderno.