MongoDB ObjectId Convertor Marcă temporală ↔ ObjectId

Știați că fiecare MongoDB ObjectId conține o marcă temporală încorporată a momentului creării sale?
Din shell-ul mongo, puteți utiliza getTimestamp() pentru a recupera marca temporală din ObjectId, dar nu există o funcție încorporată pentru a genera un ObjectId dintr-o marcă temporală.
Acest convertor online va converti marca temporală într-un ObjectId și invers.

ObjectId

(NOTĂ: nu este unic, folosiți doar pentru comparații, nu pentru crearea de noi documente!)

ObjectId pentru lipire în shell-ul mongo

Time (UTC)

An (4 cifre)
Lună (1 - 12)
Zi (1 - 31)
Oră (0 - 23)
Minut (0 - 59)
Secundă (0 - 59)
Marcă temporală ISO

De ce să generăm un ObjectId dintr-o marcă temporală?

Pentru a găsi toate comentariile create după 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);
};