如何使用node.js在mongodb中获取自创建数据以来的时间?

如何使用node.js在mongodb中获取自创建数据以来的时间?,node.js,mongodb,date,Node.js,Mongodb,Date,我想知道帐户创建以来有多长时间了: console.log('TIMEYWIMEY',req.user.createdAt, new Date(), new Date() - req.user.createdAt) 这将打印出TIMEYWIMEY 2019-05-10T16:12:40.457Z 2019-07-26T16:05:58.142Z NaN 我不明白为什么是NaN,它们看起来都是日期,我想你可以把它们减去。根据我对问题的理解,你不应该得到有效日期的毫秒差,然后进行计算吗 const

我想知道帐户创建以来有多长时间了:

console.log('TIMEYWIMEY',req.user.createdAt, new Date(), new Date() - req.user.createdAt)
这将打印出
TIMEYWIMEY 2019-05-10T16:12:40.457Z 2019-07-26T16:05:58.142Z NaN


我不明白为什么是NaN,它们看起来都是日期,我想你可以把它们减去。

根据我对问题的理解,你不应该得到有效日期的毫秒差,然后进行计算吗

const d1 = createdAt.getTime();
const d2 = new Date().getTime();
const diff = d2 - d1;
然后从差值转换为所需的单位。例如:

const days = diff/1000*60*60*24;

是的,这似乎是我错过的。虽然我必须用一个新的Date()来包装createdAt,这样它才能工作