何をしようとしているのかまだ100%確実ではありませんが、これにより、brand_idsのすべての一致に対して異なる値を持つ長さ1の結果ドキュメントが作成されます。
次に、結果として、すべてのブランドを繰り返し処理し、brand_ids配列からそれらを削除します。
couponmodel.aggregate(
{ $match: { "brand_id": { $in: brand_ids } } },
{ $group: { _id: null, brands: { $addToSet: "$brand_id" } } },
function(err, doc) {
doc.brands.forEach(function(brand) {
var idx = array.indexOf(brand);
if (idx > -1) {
brand_ids.splice(idx, 1);
}
});
}
)