$pop (Remover Primeiro ou Último)

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

$pop (Remover Primeiro ou Último)

$pop remove o primeiro (-1) ou o último (1) elemento de um array. `{ $pop: { queue: -1 } }` remove da frente; `{ $pop: { queue: 1 } }` remove do fim. Arrays vazios não são afetados. Ele remove apenas por posição — para remover por valor use $pull. Útil para filas, pilhas e listas de mensagens recentes.

CategoriaAtualização de Array
Versão do MongoDB1.0+
Idioma do Exemplomongosh (Shell)

📝 Sintaxe

{ $pop: { <campo de array>: <-1 ou 1> } }

⚙️ Parâmetros

campo de arrayO campo de matriz do qual remover.
direção-1 remove o primeiro elemento, 1 remove o último.

Retorno:O resultado da atualização

▶ Exemplo

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

// $pop: remove a frente da fila
// -1 frente, 1 fundo
db.tasks.updateOne(
  { _id: 1 },
  { $pop: { queue: -1 } }
)

// Remove o fundo (pop de pilha)
db.tasks.updateOne(
  { _id: 1 },
  { $pop: { queue: 1 } }
)

Saída:

// queue perde um elemento, da frente ou do fundo

📌 Notas

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

Q$pop pode remover um valor específico?
ANão, ele remove apenas por posição; use $pull para remover por valor.
Q$pop aceita apenas -1 ou 1?
ASim, outros valores são inválidos.
Q$pop gera erro em um array vazio?
ANão, ele não tem efeito em arrays vazios.
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%