2013-03-30 11 views

Antwort

52

Vom documentation:

Mongoose ordnet jeden Ihres Schema eine ID virtuelles Getter standardmäßig , die die Dokumente zurückgibt _ID Felddarsteller in einen String, oder im Fall von ObjectIDs, sein hexstring.

Also, im Grunde gibt die id Getter eine String-Darstellung des Dokuments _id (die für alle MongoDB Dokumente standardmäßig hinzugefügt wird, und einen Standardtyp von ObjectId haben).

In Bezug auf das, was für die Referenzierung besser ist, hängt das vollständig vom Kontext ab (d. H. Möchten Sie eine ObjectId oder eine string). Wenn Sie zum Beispiel id 's vergleichen, ist die Zeichenfolge wahrscheinlich besser, da ObjectId einen Gleichheitstest nicht bestehen, es sei denn, sie sind die gleiche Instanz (unabhängig davon, welchen Wert sie darstellen).

+0

siehe revidierte Frage –

+0

Soweit was für die Referenzierung besser ist, hängt das vollständig vom Kontext ab (d. H., Wollen Sie eine 'ObjectId' oder eine' Zeichenkette'). Zum Beispiel, wenn 'IDs' verglichen werden, ist die Zeichenfolge wahrscheinlich besser, da 'ObjectId's einen Gleichheitstest nicht bestehen wird, es sei denn, sie sind die gleiche Instanz (unabhängig davon, welchen Wert sie repräsentieren). – jmar777

+0

bitte fügen Sie das zur Antwort hinzu und ich werde es akzeptieren –

Verwandte Themen