如何使用NodeJS

时间:2017-01-21 09:14:09

标签: node.js mongodb

我是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
      }
    }

1 个答案:

答案 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
}