以下是数据的JSON:
db.projects.find({}).forEach(function(task){
task.date = new Date(task.date);
db.collection.save(task);})
任务数组包含每个项目的许多任务。每个任务都有一个字符串格式的日期。我需要将每个字符串日期转换为ISO日期格式。 我们怎样才能做到这一点? 我试过这个:
User loginUser = facebookClient.fetchObject("me", `Parameter.with("fields","first_name,last_name,posts")););`
但这是添加列日期而不是在任务数组中编辑日期?
答案 0 :(得分:1)
你真的很接近解决方案。正确的代码段是:
db.projects.find({}).forEach(function(project){
project.task.forEach(function(task){
task.date = new Date(task.date);
});
db.projects.save(project);
})
您的代码中还需要一个循环:)
答案 1 :(得分:0)
db.projects.find({},function(err,data){
//this find query will return the array of documents through which we need to iterate
for(var i =0; i<data.length;i++){
//then we want convert the date string into Date we need to iterate task array with in each document.
for(var j = 0;j<data[i].task.length;j++){
data[i].task[j].date = new Date(data[i].task[j].date);
}
}
//now save the new data
data.save();
})
答案 2 :(得分:0)
好吧,这个人工作
db.projects.find({}).forEach(function(project){
project.task.forEach(function(task){
// printjson(task)
task.date = new Date(task.date);
print(task.date)
db.projects.save(project);
})})