sql >> Databasteknik >  >> NoSQL >> MongoDB

Nod + Mongodb + ISODate + Tidszon problem

Ja, som nämnts i abdulbariks svar, MongoDB sparar datumet i UTC.

Datumobjekt:-

Du kan använda metoden getTimezoneOffset() för att få skillnaden mellan UTC och lokal tid.

  var d = new Date()
  var n = d.getTimezoneOffset();

  console.log('date obj ==>' + d);
  console.log('time zone obj ==>' + n);

Konsollogg:-

Du kan se tidszonen obj har "-60". Jag är på GMT+1 .

date obj ==>Mon Sep 12 2016 10:17:28 GMT+0100 (GMT Daylight Time)
time zone obj ==>-60

MongoDB har behållit datumet i UTC:-

Jag har använt objekt "d" (dvs. new Date()) för att bevara datumet i MongoDB. Även om jag är på GMT+1, lagras datumet i UTC.

 "timestamp" : ISODate("2016-09-12T09:17:28.193Z"),


  1. Kopiera första matrisvärdet till ett annat fält i MongoDB

  2. Mongoose upsert skapar inte standardschemaegenskap

  3. MongoDB:bästa designen för meddelandeapp

  4. Hur man fixar Redis-nycklar som serialiserats med Java