Você pode usar a projeção MongoDB também. (maneira recomendada)
Abaixo está o exemplo:
db.collection.find({},{
"Airport":1,
"Day":1,
"Humidity":1,
"Sea Level Pressure":1,
"State":1,
"Station Pressure":1,
"Temperature":1,
"Time":1,
"Wind Direction":1,
"Wind Speed":1,
"_id":1,
"month_high":1
});
Dá-lhe a saída como você esperava, ou seja,
{
"Airport":"ORL",
"Day":8,
"Humidity":55,
"Sea Level Pressure":196,
"State":"Florida",
"Station Pressure":29.97,
"Temperature":82,
"Time":1553,
"Wind Direction":170,
"Wind Speed":5,
"_id":ObjectId("5340eff554f98e32c5990b4f"),
"month_high":true
}, ...
Outra maneira é, depois de colocar os documentos no Node.js, você pode reordenar os campos em JSON.
Exemplo:
var json = {"name": "David", "age" : 78, "NoOfVisits" : 4 };
console.log(json);
//outputs - Object {name: "David", age: 78, NoOfVisits: 4}
//change order to NoOfVisits,age,name
var k = JSON.parse(JSON.stringify( json, ["NoOfVisits","age","name"] , 4));
console.log(k);
//outputs - Object {NoOfVisits: 4, age: 78, name: "David"}
Coloque a ordem de chave desejada em uma matriz e forneça à função. Em seguida, analise o resultado de volta para JSON.
Motivo pelo qual isso acontece:
O MongoDB aloca espaço para um novo documento com base em um determinado fator de preenchimento. Se sua atualização aumentar o tamanho do documento além do tamanho originalmente alocado, o documento será movido para o final da coleção. O mesmo conceito se aplica aos campos em um documento.
Se você estiver realmente interessado e quiser se aprofundar, aqui está o link para mais informações