Javascript 如何解析通过Axios GET request Node.js Express获取的对象

Javascript 如何解析通过Axios GET request Node.js Express获取的对象,javascript,node.js,express,axios,Javascript,Node.js,Express,Axios,我正在通过axiosget请求和I'检索一个json对象。正在尝试检索结果数组中每个对象的name属性。当我记录它时,它会给我一个未定义的错误?但是如果我控制台log data.results,我会看到对象的完整列表吗 使用的原料药- 使用映射查询每个名称属性 console.log( data.array.map((元素)=>{ 返回element.name; }) ) 使用映射查询每个名称属性 console.log( data.array.map((元素)=>{ 返回element.nam

我正在通过axiosget请求和I'检索一个json对象。正在尝试检索结果数组中每个对象的name属性。当我记录它时,它会给我一个未定义的错误?但是如果我控制台log data.results,我会看到对象的完整列表吗

使用的原料药-


使用映射查询每个名称属性

console.log(
data.array.map((元素)=>{
返回element.name;
})
)

使用映射查询每个名称属性

console.log(
data.array.map((元素)=>{
返回element.name;
})
)

您正在尝试访问
数据.array
,它似乎不是返回的数据对象的属性。您想对数组本身调用
.forEach
data.results

这段修改过的代码应该可以工作,尽管它可能需要一些调整

app.get("/api/users/london", async (req, res) => {
  axios
   .get("https://rickandmortyapi.com/api/character")
   .then(({ data }) =>
     data.results.forEach((element) => {
       console.log(element.name);
     })
    )
  .catch((err) => {
    console.log(err);
   });
 });

您正在尝试访问
data.array
,它似乎不是返回的数据对象的属性。您想对数组本身调用
.forEach
data.results

这段修改过的代码应该可以工作,尽管它可能需要一些调整

app.get("/api/users/london", async (req, res) => {
  axios
   .get("https://rickandmortyapi.com/api/character")
   .then(({ data }) =>
     data.results.forEach((element) => {
       console.log(element.name);
     })
    )
  .catch((err) => {
    console.log(err);
   });
 });

这个错误是不言自明的:
无法读取未定义的
的属性'forEach',这意味着在某个地方,您试图在
未定义的
上执行
forEach
。只有在
data.array
上才能执行此操作。结论:
数据
没有
数组
属性。如果我们看一下API返回的数据,事实上,它没有。它有一个
results
属性,但是->
data.results.forEach()
这个错误是不言自明的:
无法读取未定义的属性'forEach'
意味着在某个地方,您试图在
未定义的
上执行
forEach
。只有在
data.array
上才能执行此操作。结论:
数据
没有
数组
属性。如果我们看一下API返回的数据,事实上,它没有。它有一个
results
属性,但是->
data.results.forEach()
这样一个小错误。我没有看到“数组”。谢谢@Brentt还有一个bug需要修复。console.log应该在forEach中,否则它就没用了。或者用map代替foreach这样一个小错误。我没有看到“数组”。谢谢@Brentt还有一个bug需要修复。console.log应该在forEach中,否则它就没用了。或者使用map代替forEach