MongoDB ObjectId Laika zīmoga ↔ ObjectId pārveidotājs

Vai jūs zinājāt, ka katrs MongoDB ObjectId satur iegultu tā izveides laika zīmogu?
No mongo čaulas jūs varat izmantot getTimestamp(), lai iegūtu laika zīmogu no ObjectId, bet nav iebūvētas funkcijas ObjectId ģenerēšanai no laika zīmoga.
Šis tiešsaistes pārveidotājs pārvērtīs laika zīmogu uz ObjectId un atpakaļ.

ObjectId

(PIEZĪME: nav unikāls, izmantojiet tikai salīdzināšanai, nevis jaunu dokumentu izveidei!)

ObjectId ielīmēšanai mongo čaulā

Time (UTC)

Gads (4 cipari)
Mēnesis (1 - 12)
Diena (1 - 31)
Stunda (0 - 23)
Minūte (0 - 59)
Sekunde (0 - 59)
ISO laika zīmogs

Kāpēc ģenerēt ObjectId no laika zīmoga?

Lai atrastu visus komentārus, kas izveidoti pēc 2013-11-01:

db.comments.find({_id: {$gt: ObjectId("5272e0f00000000000000000")}})

Javascript functions

var objectIdFromDate = function (date) {
    return Math.floor(date.getTime() / 1000).toString(16) + "0000000000000000";
};
            
var dateFromObjectId = function (objectId) {
    return new Date(parseInt(objectId.substring(0, 8), 16) * 1000);
};