Javascript 请告诉我如何解决“问题”;data.forEach不是一个函数;错误显示在我的控制台上
我得到这个错误:Javascript 请告诉我如何解决“问题”;data.forEach不是一个函数;错误显示在我的控制台上,javascript,Javascript,我得到这个错误: Uncaught (in promise) TypeError: data.forEach is not a function 我的代码: fetch('https://reqres.in/api/users') .then(res=>res.json()) 。然后(数据=>{ data.forEach(函数(用户){ //对用户做些什么 }); });似乎是这样的,您应该像这样从结果中分解数据 fetch("https://reqres.in/api/users
Uncaught (in promise) TypeError: data.forEach is not a function
我的代码:
fetch('https://reqres.in/api/users')
.then(res=>res.json())
。然后(数据=>{
data.forEach(函数(用户){
//对用户做些什么
});
});代码>似乎是这样的,您应该像这样从结果中分解数据
fetch("https://reqres.in/api/users")
.then(res => res.json())
.then({data} => data.forEach(user =>{
//your code
}))
如果您查看数据
,它是以下JSON:
{
"page": 1,
"per_page": 6,
"total": 12,
"total_pages": 2,
"data": [
{
"id": 1,
"email": "george.bluth@reqres.in",
"first_name": "George",
"last_name": "Bluth",
"avatar": "https://reqres.in/img/faces/1-image.jpg"
},
// etc.
]
}
因此(在检查了data
和data.data
是否存在并且data.data
是一个数组之后),您应该迭代data.data
,例如
fetch('https://reqres.in/api/users')
.then(res=>res.json())
。然后(数据=>{
if(data&&data.data&&Array.isArray(data.data)){
data.data.forEach(函数(用户){
console.log(用户);
});
}
});
看起来数据
不是数组(可能是对象?)-tl;dr:写一个标题,总结问题并解释问题是什么,添加一个标题,这样我们可以重现问题,不要发布错误或错误的图片code@pilchard是正确的,您的API是用对象而不是数组()响应的,对象没有forEach
方法data
是具有data
属性的对象data.data.forEach
应该可以工作感谢一堆@blex,我确实使用了data.data.forEach(),它工作得非常好。请编辑您对({data})
的回答--它不是用当前版本编译的