Página inicial do Docs → Desenvolver aplicações → Manual do MongoDB
Armazenar uma função JavaScript no servidor
Observação
Não armazene lógica de aplicativo no banco de dados. Existem limitações de desempenho para executar JavaScript dentro do MongoDB. O código do aplicativo também costuma ser mais eficaz quando compartilha o controle de versão com o próprio aplicativo.
Há uma coleção de sistema especial denominada system.js
que pode armazenar funções JavaScript para reutilização.
Para armazenar uma função, você pode utilizar o db.collection.insertOne()
, como nos seguintes exemplos:
db.system.js.insertOne( { _id: "echoFunction", value : function(x) { return x; } } ); db.system.js.insertOne( { _id : "myAddFunction" , value : function (x, y){ return x + y; } } );
O campo
_id
mantém o nome da função e é exclusivo por banco de dados.O campo
value
mantém a definição de função.
Estas funções, salvas como Tipo JSON, estão disponíveis para utilizar a partir de qualquer contexto JavaScript, como mapReduce
e $where
.
As funções salvas como o JavaScript do tipo BSON obsoleto (com escopo), no entanto, não podem ser usadas por mapReduce
e $where
.