提问人:Blackcore 提问时间:6/25/2021 更新时间:6/25/2021 访问量:45
我怎样才能从这个函数(Javascript)的内部返回一些东西?
How can I return something from the inside of this function (Javascript)?
问:
我有这段代码,它位于由另一个第二个函数调用的函数中。现在我不知道,如何将结果返回给第二个函数。
(async () => {
try {
const response = await axios.get(knockoutCityURL);
console.log(response.data["1301210"].data.price_overview);
} catch (error) {
console.log(error.response.body);
}
})();
如果你能帮助我,我会很高兴。
答:
1赞
Andy
6/25/2021
#1
删除 IIFE,只需从一个简单的函数返回 Axios promise,然后使第二个函数异步,并等待数据。
(这是一个 JSFiddle,因为 async/await 在代码段中不起作用)
function fn1() {
// return axios.get(knockoutCityURL);
return new Promise((res, rej) => {
setTimeout(() => res('Hallo'), 2000);
});
}
async function fn2() {
const data = await fn1();
console.log(data);
}
fn2();
评论
0赞
Blackcore
6/26/2021
如果函数是从 nedb 查询调用的,您也知道如何等待此承诺吗?它看起来像这样:fn2() 在本例中为 getUrlPriceSaleArray(),它将从 fn1() 返回 promisedbps.forEach((dbp) => { const URL = getUrlPriceSaleArray(dbp.gameName); if(dbp.users.length > 1) { lines.push(....); } else { lines.push(...); } });
0赞
Andy
6/26/2021
不。你最好写一个新问题。不好意思。
上一个:无法获取从回调函数返回的所需对象
评论
return
Promise.resolve(undefined)