我有一个像这样的对象:
object: {
ids: [ ObjectId('1...'), ObjectId('2...')]
}
我想向ids
数组中添加一些元素:
[ObjectId('3...'), ObjectId('4...')]]
没有正确地做到这一点:
Object.update({ _id: someId },
{
$addToSet: { ids: { $each: [ObjectId('3...'), ObjectId('4...')]]}
}
);
我无意间做了一件坏事:
Object.update({ _id: someId },
{
$addToSet: { ids: [ObjectId('3...'), ObjectId('4...')]] }
}
);
现在用一个看起来像这样的对象吸引我
{
ids: [ ObjectId('1...'), ObjectId('2...'), [ObjectId('3...'), ObjectId('4...')]]
}
显然,这是一个问题。我尝试了一些编程解决方案,例如检查该元素是否为数组(if Array.isArray(elem))
,但看起来像猫鼬正在使查询结果变平。
解决此问题的好方法是什么?或者换句话说,如何展平数组?