Contexte
-
Un unixtime la valeur représente les secondes depuis l'époque (1er janvier 1970).
-
Une JavaScript Date() représente millisecondes depuis l'époque.
-
Dans MongoDB,
ISODate()
est un wrapper pratique pourDate()
qui vous permet de créer des dates à partir de chaînes ISO dans lemongo
coquille. Si vous utiliseznew Date()
dans le shell, il renverra unISODate()
.
Conversion
Pour convertir entre un unixtime
et un ISODate() vous pouvez multiplier vos horodatages unix par 1000 et passer cette valeur au new Date()
constructeur.
Un exemple simple dans le mongo
coque :
> db.mydata.insert({
unixtime: 1362143511
})
> var doc = db.mydata.findOne();
// convert unixtime seconds to milliseconds and create JS date
> var date = new Date(doc.unixtime * 1000);
> date
ISODate("2013-03-01T13:11:51Z")