我正在更新字段中的数组,但我正在寻找哪种方法相对于最有效 系统资源和速度之间。
method 1.
UserModel.updateOne({
_id:studentSelect
},
{$set:{'contact.$[first].state':'California',
'employment_detail.$[second].employment_date':Date.now}},
{arrayFilters:[{'first.dept_id': thisidthedeptid}, <---array filter to get specific data
{'second.dept_id': thisidthedeptid},]}
。
method 2.
var contactIdx = usermodel.contact.findIndex(x=>
x.dept_id==thisidthedeptid)
var employmentIdx = usermodel.employment_detail.findIndex(x=>
x.dept_id==thisidthedeptid)
usermodel.contact[contactIdx].state = 'California'
usermodel.employment_detail[employmentIdx].employment_date = Date.now()
请不要用于辩论或类似的事情。我想知道我应该坚持哪一个。 并请说明原因。我无法在系统上运行测试