Ich möchte ObjectID (Mongodb) in JavaScript in String konvertieren. Wenn ich ein Objekt aus MongoDB erhalte. es wie ein Objekt hat: timestamp, second, inc, machine. Ich kann nicht in einen String konvertieren.
Konvertieren Sie ObjectID (Mongodb) in JavaScript in String
vhlen
anubiskong
Versuche dies:
objectId.str
Siehe die Dok.
ObjectId()
hat die folgenden Attribute und Methoden:[…]
str
– Gibt die hexadezimale Zeichenfolgendarstellung des Objekts zurück.
-
Ich verstehe nicht warum, das funktioniert bei mir nicht, wenn ich eine console.log mache, sehe ich die objectId als Objekt auf der Konsole
– roz
18. März 2017 um 7:06 Uhr
-
Das hat bei mir auch nicht funktioniert. Aber,
objectId.toString()
Tat.– JC
5. Mai 2017 um 15:48 Uhr
-
objectId.str
ist für Mongo-Muschel,objectId.toString()
ist für Mongo-Client– devdev_dev
15. Oktober 2021 um 3:38 Uhr
Sammaye
Hier ist ein funktionierendes Beispiel für die Konvertierung der ObjectId
in eine Zeichenfolge
> a=db.dfgfdgdfg.findOne()
{ "_id" : ObjectId("518cbb1389da79d3a25453f9"), "d" : 1 }
> a['_id']
ObjectId("518cbb1389da79d3a25453f9")
> a['_id'].toString // This line shows you what the prototype does
function () {
return "ObjectId(" + tojson(this.str) + ")";
}
> a['_id'].str // Access the property directly
518cbb1389da79d3a25453f9
> a['_id'].toString()
ObjectId("518cbb1389da79d3a25453f9") // Shows the object syntax in string form
> ""+a['_id']
518cbb1389da79d3a25453f9 // Gives the hex string
Habe verschiedene andere Funktionen ausprobiert, z toHexString()
ohne erfolg.
-
.toHexString() hat bei mir funktioniert, danke Sammaye! mongodb.github.io/node-mongodb-native/api-bson-generated/…
– js_gandalf
29. Dezember 2014 um 3:16 Uhr
in dem Hülse
ObjectId("507f191e810c19729de860ea").str
in js Verwenden des nativen Treibers für node
objectId.toHexString()
-
Schöne Antwort, die auf den Unterschied bei der Verwendung des nativen Treibers hinweist.
– Benutzer3142695
22. November 2017 um 9:52 Uhr
-
Dies ist der Fall, wenn Sie einen Client wie NoSQLBooster verwenden. Danke.
– Francisco Javier Barrena
7. Februar um 18:44 Uhr
Asch
Sie können verwenden $toString
Aggregation in der Mongodb-Version eingeführt 4.0 die die ObjectId in einen String umwandelt
db.collection.aggregate([
{ "$project": {
"_id": { "$toString": "$your_objectId_field" }
}}
])
Verwenden Sie toString:
var stringId = objectId.toString()
Funktioniert mit dem neuesten Node MongoDB Native-Treiber (v3.0+):
Benutzer1438797
Tatsächlich können Sie dies versuchen:
> a['_id']
ObjectId("518cbb1389da79d3a25453f9")
> a['_id'] + ''
"518cbb1389da79d3a25453f9"
ObjectId-Objekt + String wird in ein String-Objekt konvertiert.
Jonatas Eduardo
Wenn jemand in Meteorjs verwendet, kann versuchen:
Im Server: ObjectId(507f191e810c19729de860ea)._str
.
In Vorlage: {{ collectionItem._id._str }}
.
""+objectId
oderobjectId.toString()
wodurchobjectId
ist die Variable, von der ich glaube, dass sie das tut, wonach Sie suchen.– Sammaye
10. Mai 2013 um 9:00 Uhr
Die aus MongoDB geladene ObjectID ist ein Objekt. Wenn Sie die Funktion toString () in Javascript verwenden, wird sie zurückgegeben [Object, Object].
– vhlen
10. Mai 2013 um 9:13 Uhr
Seltsamerweise sollten diese Funktionen implementiert werden, ich bin mir sicher, dass das behoben wurde
– Sammaye
10. Mai 2013 um 9:15 Uhr
Keine Ahnung, wer dies als Duplikat von: stackoverflow.com/questions/8106517/mongodb-objectid-to-string markiert hat, aber Sie liegen ernsthaft falsch …
– Sammaye
10. Mai 2013 um 9:23 Uhr
Ich denke, es ist keine schlechte Frage.! Ihr Link wird für PHP verwendet. Ich brauche es in JavaScript.!
– vhlen
3. Juni 2013 um 1:11 Uhr