gpt4 book ai didi

javascript - 从调用中获取值

转载 作者:行者123 更新时间:2023-12-01 00:06:11 25 4
gpt4 key购买 nike

我尝试在我的应用程序中使用聚合函数并捕获此调用的返回值。一切都很好,直到我做了 console.log(cases);里面exec ,但我无法将这些值作为返回值返回给函数。

我使用:

async function getListSuites() {

const testdata = await Suite.aggregate([
{
$sort: {
identifier: 1,
last: 1
}
},
{
$group: {
_id: "$identifier",
data: {
$last: {
last: "$last",
_id: "$_id"
}
},
count: {$sum: 1}
}
},
//Optional
{
$project:{
_id: "$data._id",
date: "$data.last",
name: "$_id",
count: "$count"
}
}
]).exec((err, cases) => {
if (err) throw err;
console.log(cases); //works
return cases ;
});

};

router.get('/jsonsuites', async function(req, res){


var optionString = await getListSuites();

console.log(optionString);

res.send(optionString);
});

有什么提示吗?也许是时间问题?

最佳答案

您正在定义一个异步函数

async function getListSuites()

您正在函数内定义一个常量

const testdata =

您没有从该函数返回任何内容。

所以当你这样做

 var optionString = await getListSuites();

optionString 将是未定义的,因为 getListSuites() 没有返回任何内容

在函数末尾添加一个return testdata

async function bazbal() {
return {yea:'baby'};
}
async function foobar() {
const bar = await bazbal();
return bar;
}
async function run() {

var optionString = await foobar();
console.log(optionString);
var optionString = await foobar();
console.log(optionString);
};

run();

关于javascript - 从调用中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60373283/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com