gpt4 book ai didi

javascript - 为什么 async/await 变量返回未定义?

转载 作者:行者123 更新时间:2023-12-03 03:17:17 25 4
gpt4 key购买 nike

下面是我的代码...

async function getItemDetalil(url) {
const $ = await request(url, (err, res, body) => {
return cheerio.load(body);
});
console.log($);
}

为什么我的“$”未定义?我认为它将是一个 Cheerio 对象?

最佳答案

Why async/await variable return undefined?

await x 计算为 x 的值,或者,如果该值是一个 Promise,则计算为 Promise 解析为的值。

示例:

// Value
(async function() {
console.log('Normal value', await 42);
}());

// Promise resolution
(async function() {
console.log('From promise:', await Promise.resolve(42));
}());

如果$undefined,那么request()要么返回undefined,要么返回一个解析为未定义(不太可能)。查看其文档或源代码以了解到底发生了什么。

<小时/>

I assume it will be a cheerio object?

它只会是 cherrio 对象iff request 实际上返回一个 cherrio 对象或解析为 cherrio 对象的 Promise。

How do I convert an existing callback API to promises?可能会帮助您解决实际的编码问题。

关于javascript - 为什么 async/await 变量返回未定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46715291/

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