我有这样的文件:
{
Name : val
AnArray : [
{
Time : SomeTime
},
{
Time : AnotherTime
}
...arbitrary more elements
}
我需要将“时间”更新为日期类型(现在它是字符串)
我想做一些 psudo 之类的事情:
foreach record in document.AnArray { record.Time = new Date(record.Time) }
我已经阅读了有关 $ 和“点”符号的文档以及这里的几个类似问题,我尝试了以下代码:
db.collection.update({_id:doc._id},{$set : {AnArray.$.Time : new Date(AnArray.$.Time)}});
并希望 $ 会迭代“AnArray”属性的索引,因为我不知道每条记录的长度。但是我得到了错误:
SyntaxError: missing : after property id (shell):1
如何使用动态值对数组嵌套值的每个成员执行更新?