Warum hat nodejs-mongodb Middleware eine andere Syntax als mongo shell? - node.js, mongodb

Selbst wenn ich es benutzen würde node-mongodb-nativ, ich muss etwas andere Funktionen in etwas anderer Weise als die Funktionen verwenden, die ich in mongodb-Schale schreibe.

  1. Warum in aller Welt ist es besser?
  2. Gibt es einen Weg, um absolut die gleiche Syntax zu verwenden, wie ich im Terminal verwende Mongodb-Schale?
  3. Wenn ja, gibt es Nachteile? Zum Beispiel, im Falle von PostgreSQL gibt es nützliche Funktionen in Middleware wie SQL Injektionen Prävention usw.

Antworten:

3 für die Antwort № 1

Wenn Sie ein Beispiel für zwei Versionen vondie gleiche Funktionalität, die Sie vergleichen möchten, dann könnte ich Ihnen eine bessere Erklärung geben, aber da Sie kein Beispiel angegeben haben, kann ich nur allgemein sprechen.

Einige der Unterschiede sind, weil die Mongo-Shell alles sequenziell ausführt. In Node müssen Sie Rückrufe oder Versprechen für die Flusskontrolle verwenden, die Sie in der Mongo-Shell nicht tun.

Außerdem gibt es Unterschiede beim Zugriff auf die Sammlungen. In der Mongo-Shell, die du normalerweise benutzt db.collectionName.

Auch in der Mongo-Shell haben Sie einige Dinge vordefiniert, wie zum Beispiel Funktionen, die sich auf Objekt-IDs beziehen.

Und schließlich verwendet Mongo BSON für Daten und in Node verwendet man JavaScript-Objektliterale (mehr wie JSON, aber weniger streng).

Knoten verwendet V8 plus zusätzliche Funktionalität und Mongo Shell verwendet SpiderMonkey, ohne Funktionalität, die in Node verfügbar ist.

Alles hat Konsequenzen in feinen Unterschieden.

Für weitere Details siehe:


Speisekarte