簡體   English   中英

Javascript返回了錯誤的日期值(NodeJS)

[英]Javascript returns wrong Date values (NodeJS)

我正在處理NodeJS項目,但Date值錯誤。 而且我沒有弄錯我在做什么。

 var d = new Date(results[1].timestamp);
      console.log(results[1].timestamp); // 2016-05-10T13:29:47   <- this is right (stored at my DataBase)
      console.log(d.getDate());          //10
      console.log(d.getFullYear());      //2016
      console.log(d.getMonth());         //4
      console.log(d.getDay());           //2
      console.log(d.getHours());         //15
      console.log(d.getMinutes());       //29
      console.log(d.getSeconds());       //47

因此,月,日和小時是錯誤的。 我在Mac上的Google Chrome中看到了這些結果

感謝您的幫助

這里有一些錯誤:

  1. getMonth返回基於0的月份。 那是5月04

  2. getDay返回星期幾。 我想你想要getDate

  3. 日期被解析為UTC,而getHour是根據區域設置的。 因此,小時數可能與您想要的小時數不同(但在這里它似乎是“精確的”,因為它與輸入的值相同)。

下一個問題的提示:請參閱一些文檔。 例如MDN

getDay()函數返回日期的日期,即從星期日到星期六(0到6)

getMonth()函數返回從一月到十二月的月份(0到1),因此在這里您需要加1才能正確獲取值

而且我怕您會誤解getHours()結果,因為如果我檢查上述日期,它將給我13

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM