hasNext() (Verificar Próximo Documento)
Última atualização: 2026-10-09
hasNext() (Verificar Próximo Documento)
hasNext() informa se um cursor ainda tem um próximo documento: `while (db.users.find().hasNext()) { ... }`. Ele verifica sem avançar o cursor e combina com next() para iteração segura, retornando false no fim. É a forma padrão de conduzir loops de cursor.
| Categoria | Cursor |
|---|---|
| Versão do MongoDB | 1.0+ |
| Idioma do Exemplo | mongosh (Shell) |
📝 Sintaxe
db.<collection>.find(<filter>).hasNext()
Retorno:Booleano: true se existe um próximo documento, false quando esgotado.
▶ Exemplo
Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):
// hasNext: itera todo o cursor com segurança
const cursor = db.users.find({ age: { $gte: 18 } })
while (cursor.hasNext()) {
print(cursor.next().name)
}
Saída:
Alice
Bob
Cara
📌 Notas
- hasNext() não avança o cursor
- Retorna false quando esgotado
- Mais seguro que next() puro, evitando erros de fim de cursor
🏷️ Tags Relacionados
💡 Casos Relacionados
Mais casos práticos em breve.
📚 Tutoriais Relacionados
❓ Perguntas Frequentes
QComo hasNext e next trabalham juntos?
AO loop clássico: while (cursor.hasNext()) { const doc = cursor.next() } — verifique primeiro, depois busque.
QO hasNext consome o cursor?
ANão — ele apenas verifica, deixando a posição do cursor intacta.
QO que hasNext retorna para um cursor vazio?
ARetorna false; o corpo do loop nunca executa e nenhum erro ocorre.