我希望能够在Mongo中的字段上将时间戳设置为以秒为单位的整数,而不是像node.js应用程序中Mongo中的默认设置那样以毫秒为单位。如果要执行以下操作,是从节点应用程序还是通过Mongo数据库计算出新的Date()?
db.testcollection.save({"mydate": Math.floor((new Date()).getTime()/1000)})
答案 0 :(得分:1)
这取决于您在哪里执行代码:
如果您通过mongodb驱动程序(例如,节点应用程序)执行该操作,则日期对象将由js运行时执行,然后由mongodb对其进行解释,因此,如果执行以下操作:>
db.testcollection.save({"mydate": Math.floor((new Date()).getTime()/1000)})
在节点应用程序Math.floor((new Date()).getTime()/1000)
中,首先由javascript计算,然后将执行该操作:
db.testcollection.save({"mydate": 1568478964})
将创建一个文档,并将mydate
保存为整数