Seleccione los últimos N registros de MongoDB usando node.js

Nota: He visto la otra pregunta y he intentado responderla sin suerte.

Tengo una colección en MongoDB:

{ _id: 1, category_id: 1, time_added: 1234567890, name: "abc" } 

Necesito encontrar las últimas 10 entradas de category_id igual a 10 . Suena simple?

 collection.find({ 'category_id': 10 }, {}, { _id: -1, limit : 10}, function (e, d) {}); 

Pero ejecutar esto me da los primeros 10 registros en lugar de los últimos 10. Parece que el controlador tiene prioridad para “limitar” y no para “ordenar” … También bash con $natural y ordenar en time_added . Siempre que ejecuto la misma consulta desde la línea de comandos, obtengo lo que necesito. Esto es lo que escribo en la línea de comando:

 collection.find({ 'category_id': 10 }).sort({_id: -1}).limit(10) 

¿Qué estoy haciendo mal? ¿Hay una forma alternativa de hacer esto con node.js?

Resulta que node.js acepta llamadas de función de la misma manera que lo hace la interfaz de línea de comandos. Cada función tiene el último argumento opcional como función de callback. Entonces este código se ejecuta y devuelve los resultados correctos:

 collection.find({ 'category_id': 10 }).sort({_id: -1}).limit(10, function (e, d) {})