3 回答

TA貢獻1830條經(jīng)驗 獲得超9個贊
這可以通過幾種不同的方式完成,其中最好的方法是使用不同的方式:
db.collection.distinct("toUser")
輸出將是:
[
'5ed9d49c7e516616600eb693',
'5ed9d49c7e516616600eb693',
'5ed9d49c7e516616600eb693',
'5ed9d3897e516616600eb692'
]

TA貢獻1803條經(jīng)驗 獲得超6個贊
您可以使用 和 內部回調檢查對象是否有任何鍵使用和長度。如果它有k,則將使用的值推入累加器數(shù)組reduceObject.keysObject.values
let data = [{},
{
toUser: '5ed9d49c7e516616600eb693'
},
{
toUser: '5ed9d49c7e516616600eb693'
},
{
toUser: '5ed9d49c7e516616600eb693'
},
{
toUser: '5ed9d3897e516616600eb692'
}
];
let filterdValue = data.reduce((acc, curr) => {
const objKey = Object.keys(curr);
if (objKey.length > 0) {
acc.push(...Object.values(curr))
}
return acc;
}, []);
console.log(filterdValue)

TA貢獻2065條經(jīng)驗 獲得超14個贊
可以使用以下查詢將對象轉換為字符串
> db.objectidToStringDemo.aggregate([{$project: {toUser: {$toString: "$toUser"}}}]);
添加回答
舉報