sql >> Database >  >> NoSQL >> MongoDB

Mongoose:ObjectId-vergelijkingen mislukken inconsistent

Een rechte == (of === ) vergelijking vergelijkt de twee objecten op basis van referentie, niet op waarde. Dus dat wordt alleen waar als ze allebei naar dezelfde instantie verwijzen.

In plaats daarvan zou u de equals . moeten gebruiken methode van ObjectID om hun waarden te vergelijken:

story._id.equals(offref.ref)

Zoals @bendytree opmerkt in de opmerkingen, als een van beide waarden null kan zijn (en u wilt dat nulls als gelijk worden vergeleken), kunt u in plaats daarvan het volgende gebruiken:

String(story._id) === String(offref.ref)


  1. Spark, Python en MongoDB laten samenwerken

  2. Rdbtools bij Redis Conf18

  3. Opslaan en ophalen van JavaScript-objecten in/van MongoDB

  4. Hoe in redis zoeken naar hash-sleutels?