【发布时间】:2020-10-24 21:37:49
【问题描述】:
我正在尝试映射从第三方 api 返回的对象数组以返回某些对象值,但我的 map 函数存在错误,我无法找出原因。我已经测试以确保我的其余代码的行为正常,只是这一个地图功能我似乎无法正常工作。
这是我当前的代码:
async function displayRecipeCard(inputString) {
const recipes = await getRecipeInfo(inputString); //fetches data from api and returns an object
const recipeResults = recipes.results; // returns an array of objects
const recipeCard = recipeResults.map(recipe => {
return recipe.title;
});
};
返回:
[[PromiseStatus]]: "resolved"
[[PromiseValue]]: undefined
现在如果我写:
async function displayRecipeCard(inputString) {
const recipes = await getRecipeInfo(inputString);
const recipeResults = await recipes.results;
return recipeResults[0].title;
};
按预期返回第一个数组对象元素的标题:
[[PromiseStatus]]: "resolved"
[[PromiseValue]]: undefined
任何人都可以注意到我的代码中的任何错误或知道问题可能是什么吗?
谢谢!
【问题讨论】:
-
您是说
recipeCard的值是解析为未定义的承诺吗?或者你是说对displayRecipeCard()的调用是在给出一个解析为未定义的承诺?如果是displayRecipeCard(),那是因为您没有从displayRecipeCard函数返回任何内容
标签: javascript arrays object array.prototype.map