js日期为Bson时间戳

时间:2019-08-27 09:05:53

标签: mongodb bson

如何从js Timestamp获取Bson Date

const { Timestamp } = require('mongodb')


const jsDate = new Date("Tue, 27 Aug 2019 09:09:59 GMT")
const startAtOperationTime = ???      

const changeStream = db.watch({ startAtOperationTime })

mongo db.watch

1 个答案:

答案 0 :(得分:1)

供您使用:

const ordinal = 1
const seconds = parseInt( jsDate.getTime() / 1000 )
const startAtOperationTime = new Timestamp(ordinal, seconds)

BSON Timestamp不仅包含自Unix纪元以来的秒数,还包含该操作的递增序号(数据库通常在一秒钟内发生多次操作)。如果您不关心或不知道ordinal是什么,只需传递1即可,这意味着从一秒钟的第一次操作开始。