我有一个字符串数组
let stringObjectIdArray = ['fssdlfsd343','43434234242','342424242']
,我想通过使用猫鼬类型将字符串数组更改为对象ID数组,但是它不起作用。它仅适用于字符串,而不适用于数组类型。
let objectIdArray = mongoose.Types.ObjectId(stringObjectIdArray)
// above will give error
在这种情况下,有什么方法可以帮助我吗?非常感谢您对我的帮助!
答案 0 :(得分:5)
使用Array.prototype.map()
在数组的每个元素上调用方法并将结果收集到新数组中:
let objectIdArray = stringObjectIdArray.map(s => mongoose.Types.ObjectId(s));
答案 1 :(得分:2)
您也可以像这样简化已接受的答案:
let objectIdArray = stringObjectIdArray.map(mongoose.Types.ObjectId);