,可以通过使用Promise和async/await来实现。
首先,需要安装MongoDB驱动程序,可以使用npm命令进行安装:
npm install mongodb
然后,可以使用以下代码来合并两个异步结果:
const MongoClient = require('mongodb').MongoClient;
// 定义MongoDB连接URL和数据库名称
const url = 'mongodb://localhost:27017';
const dbName = 'mydb';
// 定义异步函数来获取MongoDB数据
async function getData() {
try {
// 连接到MongoDB
const client = await MongoClient.connect(url);
console.log('Connected successfully to server');
// 选择数据库
const db = client.db(dbName);
// 获取第一个异步结果
const result1 = await db.collection('collection1').find({}).toArray();
// 获取第二个异步结果
const result2 = await db.collection('collection2').find({}).toArray();
// 合并两个结果
const mergedResult = [...result1, ...result2];
// 关闭连接
client.close();
// 返回合并后的结果
return mergedResult;
} catch (err) {
console.log(err);
}
}
// 调用异步函数并处理结果
getData()
.then(result => {
console.log(result);
})
.catch(err => {
console.log(err);
});
上述代码中,首先使用MongoClient连接到MongoDB数据库。然后,使用async/await关键字定义异步函数getData(),在该函数中使用await关键字来等待异步操作的结果。通过调用find()方法获取MongoDB中的数据,并使用toArray()方法将结果转换为数组。最后,使用展开运算符(...)将两个结果合并为一个数组。最后,通过调用client.close()关闭数据库连接。
请注意,上述代码仅为示例,实际应用中需要根据具体情况进行修改。此外,还需要确保MongoDB服务器已启动,并且数据库和集合的名称正确。
领取专属 10元无门槛券
手把手带您无忧上云