$reverseArray (Inverter a Ordem do Array)

Última atualização: 2026-10-09

$reverseArray (Inverter a Ordem do Array)

$reverseArray inverte a ordem dos elementos em um array e retorna um array novo. Usos típicos incluem virar registros em ordem cronológica ascendente para ordem descendente e colocar a mensagem mais recente primeiro. Ele inverte apenas o array externo; arrays aninhados mantêm sua ordem interna. Argumentos que não são array geravam erro antes do MongoDB 5.0 e retornam null depois disso, então proteja campos incertos com $isArray.

CategoriaArray
Versão do MongoDB1.0+
Idioma do Exemplomongosh (Shell)

📝 Sintaxe

{ $reverseArray: <array> }

⚙️ Parâmetros

arrayA expressão de matriz a inverter.

Retorno:Uma nova matriz em ordem inversa; argumentos que não são matriz resultam em null ou lançam erro dependendo da versão

▶ Exemplo

Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):

// $reverseArray: mensagem mais recente primeiro
db.chats.aggregate([
  { $project: {
      latestFirst: { $reverseArray: '$messages' }
  } }
])

Saída:

{ '_id': 1, 'latestFirst': [ 'm3', 'm2', 'm1' ] }

📌 Notas

Mais casos práticos em breve.

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

QO $reverseArray modifica o array original?
ANão — expressões de agregação são puras; ele retorna um array novo.
QE argumentos que não são array?
AGeram erro antes da 5.0, retornam null desde a 5.0; verifique com $isArray antes.
QArrays aninhados também são invertidos?
AApenas a camada externa é invertida; arrays internos mantêm sua ordem.
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%