在 javascript 中返回 undefined 的对象值

Object values returning undefined in javascript

提问人:muzammil 提问时间:6/15/2023 最后编辑:Andymuzammil 更新时间:6/15/2023 访问量:42

问:

在此处输入图像描述我正在使用报价 API 来获取报价并显示它们,我可以打印返回有关报价的全部信息的对象,但是当我尝试使用它们时,我无法访问它的各个值,它只是在控制台日志中打印未定义

我希望在调用对象时获取对象的单个值,例如result.content。 这是代码

const url = "https://quotes15.p.rapidapi.com/quotes/random/";
const options = {
  method: "GET",
  headers: {
    "X-RapidAPI-Key": "api_key",
    "X-RapidAPI-Host": "quotes15.p.rapidapi.com",
  },
};
(async function main() {
  // You can use await inside this function block
  try {
    const response = await fetch(url, options);
    const result = await response.text();
    console.log(result);
    console.log(result.name);
  } catch (error) {
    console.error(error);
  }
})();
javascript json fetch-api

评论

1赞 Jaromanda X 6/15/2023
result将是一个字符串 - 它没有属性.name
1赞 Humanoid Mk.12 6/15/2023
我想你可能正在使用 await response.json()。您的响应类型是 json()
0赞 muzammil 6/15/2023
@Kangseohyun是的,这就是问题所在,我修复了它,非常感谢

答:

0赞 Andy 6/15/2023 #1
  1. 您正在将响应解析为应该解析为 .textjson

  2. 已分析的对象没有属性。它确实有一个属性,该属性具有属性。nameoriginatorname

如果您进行这些更改,您的代码将起作用,并且您还可以以类似的方式访问其余数据。

const response = await fetch(url, options);
const result = await response.json();
console.log(result);
console.log(result.originator.name);

评论

0赞 muzammil 6/15/2023
非常感谢,这正是问题所在,这是我第一次使用 API,所以我很难过。