¿Por qué el middleware nodejs-mongodb tiene una sintaxis diferente a mongo shell? - node.js, mongodb

Incluso si yo usara nodo-mongodb-nativo, tengo que usar funciones ligeramente diferentes de manera ligeramente diferente a las funciones que escribo en shell mongodb.

  1. ¿Por qué diablos es mejor?
  2. ¿Hay alguna forma de usar absolutamente la misma sintaxis que yo uso en el terminal? mongodb shell?
  3. Si es así, ¿hay desventajas? Por ejemplo, en el caso de PostgreSQL, existen funciones útiles en middleware como la prevención de inyecciones de SQL, etc.

Respuestas

3 para la respuesta № 1

Si pudieras publicar un ejemplo de dos versiones dela misma funcionalidad que desea comparar, entonces le podría dar una mejor explicación, pero como no dio ningún ejemplo, solo puedo hablar en general

Algunas de las diferencias se deben a que el shell Mongo ejecuta todo secuencialmente. En Node, tiene que usar devoluciones de llamada o promesas para el control de flujo que no hace en el shell Mongo.

También hay algunas diferencias en cómo acceder a las colecciones. En el shell Mongo usualmente usas db.collectionName.

También en el shell Mongo tiene algunas cosas predefinidas, como las funciones relacionadas con los identificadores de objetos, por ejemplo.

Y finalmente, Mongo usa BSON para datos y en Node usas literales de objetos de JavaScript (más como JSON pero menos estrictos).

Node usa V8 más funcionalidad adicional y Mongo shell usa SpiderMonkey, sin ninguna funcionalidad disponible en Node.

Todo tiene consecuencias en diferencias sutiles.

Para más detalles ver:


Menú