色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術(shù)文章
文章詳情頁

javascript - JS new Date() 保存到 mongodb 中會早8個小時,我們這里是東八區(qū),mongodb 保存的是格林尼治時間

瀏覽:134日期:2024-03-27 18:26:22

問題描述

我用的 mongoose ,這是我定義的 Schema :

const report = mongoose.Schema({ datetime: Date, username: String, detail: mongoose.Schema.Types.Mixed})

這是我存入的數(shù)據(jù):

let params = { username: ’testadmin’, detail: ’23123’, datetime: new Date(’December 17, 1995 03:24:00’)}

存進 mongodb 中后存的時間會早八個小時:javascript - JS new Date() 保存到 mongodb 中會早8個小時,我們這里是東八區(qū),mongodb 保存的是格林尼治時間‘95年12月17日凌晨3點’變成了‘12月16日晚上7點,時區(qū)搞錯了,,,請問大家這種情況應(yīng)該怎么辦?mongodb 或者 mongoose 有相應(yīng)的處理方法嗎?

小弟這里先謝過!

問題解答

回答1:

原來mongodb中存的是UTC時間,全球統(tǒng)一,,,那就直接存,再存之前不做操作,讀取出來后把時間new Date(report.datetime).toLocaleString(),調(diào)用js自帶的Date().toLocaleString()就行了

回答2:

因為 mongoose 和 sequelize 開始的時候,沒有考慮時區(qū),ORM 之后就搞錯時區(qū)了。解決方法去看看最新版本是否解決,如果還未解決可以試試把問題發(fā)給作者,然后只能自己在應(yīng)用層預(yù)處理,寫入 +8 小時,讀出 -8 。

回答3:

getTimezoneOffset() 方法可返回格林威治時間和本地時間之間的時差,以分鐘為單位。

回答4:

存成unix時間戳吧,這樣就不會有啥問題了,取出來的時候 根據(jù)時區(qū)去處理轉(zhuǎn)換就可以了

回答5:

你在把那個iso時間new Date回來就好了,存的是iso標準時間,new Date的時候回自動轉(zhuǎn)成本地時區(qū)

回答6:

正如樓上有同學(xué)所說的,使用ISO格式:new Date('2017-03-02T08:00:00+08:00')

或者

使用moment.js

供參考。

Love MongoDB! Have fun!

回答7:

可以嘗試保存時間戳

標簽: JavaScript
主站蜘蛛池模板: 亚洲精品国产高清不卡在线 | 成人www视频网站免费观看 | 99久久99久久精品免费看子 | 精品欧美一区二区在线观看欧美熟 | 91精品成人免费国产 | 日本一区二区三区高清在线观看 | 岛国午夜精品视频在线观看 | 广东毛片 | 久久精品视频一区二区三区 | 国产精品亚洲一区二区三区久久 | 天堂素人搭讪系列嫩模在线观看 | 国内成人免费视频 | 国产午夜毛片一区二区三区 | 午夜宅宅宅影院在线观看 | 97夜夜操| 成人久久视频 | a级做爰视频免费观看 | 成人午夜网站 | 亚洲国产精品ⅴa在线观看 亚洲国产精品aaa一区 | 国产精品亚洲二区 | 日韩毛片在线免费观看 | 亚洲成人777| 全部免费的毛片在线看美国 | 成人免费精品视频 | 欧美成人小视频 | 国产激情视频在线 | 久久久久视频精品网 | 中文字幕在线日韩 | 精品在线观看免费 | 私人玩物福利 | 全部孕妇毛片丰满孕妇孕交 | 中文字幕播放 | 国产视频久 | 欧美一区亚洲 | 萌白酱在线喷水福利视频 | 成人欧美一区二区三区视频xxx | 亚洲欧美日产综合在线看 | 国产亚洲欧美日韩国产片 | a毛片久久免费观看 | 4455四色永久免费 | 免费看欧美一级片 |