是否有任何 Mongo(命令行)函数可以将字符串转换为对象?例如JSON.parse 之类的?
db.sessions.update({}, {'$set':{ 'extra':JSON.parse(stringData) }});
我的解决方案:
function my_extra() {
db.tempData.find().forEach( function(obj) {
obj.extra = db.eval(obj.myString);
db.tempData.save(obj);
} );
};
my_extra();
但是,我试试这个: db.tempData.update({}, {'$set':{ 'extra':db.eval(myString) }}); 但它不起作用..说 myString 没有定义。 所以我使用 this.myString 但也不起作用。这就是我必须使用该功能的原因。
有没有办法在第二个参数中引用myString?
最佳答案
2.1+ 版本的 Mongo shell 包含一个 JSON
实用程序对象:
- 从对象到 JSON:
JSON.serialize(object)
- 从 JSON 到对象:
JSON.parse(string)
http://api.mongodb.org/java/2.6/com/mongodb/util/JSON.html
注意:在 2.4+ 版本的 Mongo shell 中,使用 JSON.stringify()
而不是 JSON.serialize()
http://docs.mongodb.org/manual/release-notes/2.4-javascript/
关于json - MongoDB 中有任何内置的 JSON.parse 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7666324/