我是nodejs的新手,并尝试使用nodejs将当前时间戳的实现mongodb插入为毫秒,并将其作为double值插入。任何人都可以帮我如何插入这个NumberLong值。
var data = {
myId : uniqueId,
Timestamp : Date.now(), ---> This one is getting inserted as double.
userData : applicationData
}
}
我也尝试像这样插入,但是将其作为String插入。
var mongo=require('mongodb');
var Long = mongo.Long;
var data = {
myId : uniqueId,
Timestamp : Long.fromString((Date.now() + "")), ---> This one is getting inserted as String.
userData : applicationData
}
}
答案 0 :(得分:7)
这是因为JavaScript编号始终是64位浮点。 您可以使用Mongo驱动程序的长(https://mongodb.github.io/node-mongodb-native/api-bson-generated/long.html)来解决此问题。
var Long = require('mongodb').Long;
var current_millies = new Date().getTime();
var data = {
myId : uniqueId,
timestamp : Long.fromNumber(current_millies),
userData : applicationData
}