Javascript 连接一个数组(?)或在其上循环?
求救!我正在尝试对数组进行concat(?)或循环,但问题似乎在于它们是如何嵌套的,任何关于如何一次对这些数组进行concat或循环的解决方案都将非常有用! 主数组有5个索引,但每个索引本身就是一个包含20个索引的数组 我刚找到一篇关于flat()的文章,但我还是没有把它写出来 这里有更多信息:我从tmdb API获取信息,它只提供20篇文章,所以我花了5次时间在我的状态中添加100篇文章。但结果是一个凌乱的嵌套对象,我希望将其展平为一个干净的数组:Javascript 连接一个数组(?)或在其上循环?,javascript,arrays,reactjs,multidimensional-array,Javascript,Arrays,Reactjs,Multidimensional Array,求救!我正在尝试对数组进行concat(?)或循环,但问题似乎在于它们是如何嵌套的,任何关于如何一次对这些数组进行concat或循环的解决方案都将非常有用! 主数组有5个索引,但每个索引本身就是一个包含20个索引的数组 我刚找到一篇关于flat()的文章,但我还是没有把它写出来 这里有更多信息:我从tmdb API获取信息,它只提供20篇文章,所以我花了5次时间在我的状态中添加100篇文章。但结果是一个凌乱的嵌套对象,我希望将其展平为一个干净的数组: const fetchLoop = asyn
const fetchLoop = async(page)=> {
const URL = `https://api.themoviedb.org/3/movie/${type}?
api_key=${API_KEY}&language=en-US&page=${page}`
const fetchRes = await fetch(URL)
.then(res => res.json())
setLoopPosts(prev => [...prev, fetchRes])
}
[1,2,3,4,5].forEach(page => fetchLoop(page))
您有阵列的示例吗
myArray = [[1,2],3,[4,5]];
myFlatArray = myArray.flat();
console.log(myFlatArray);
预期日志结果为[1,2,3,4,5]对于展平阵列,可以使用
flatMap
或flat
const数据=[
{第1页,结果:[{a:1}]},
{第2页,结果:[{b:2}]},
];
//使用平面图
const res=data.flatMap((项)=>item.results);
控制台日志(res);
//使用flatMap和解构
const res2=data.flatMap(({results})=>results);
console.log(res2);
//使用映射、分解和展开
const res3=data.map(({results})=>results.flat();
控制台日志(res3)代码>这是一个对象数组,不是数组数组。请以文本而不是图像的形式发布数据。还包括用于在数组上循环的代码,并描述运行它时发生的情况以及希望它以不同方式执行的操作。外部数组的值不是数组,而是包含数组的对象。你可以做data.flatMap(x=>x.results)
。是的,但是像array[0]一样低一级。结果应该是一个有20个索引的数组?我原以为这应该行得通,但似乎不行:const array1=loopPosts[0]。results.flat(infinity)@visua只要使用嵌套的for
循环就行了,如果你想循环它们的话for(让x=0;x
@code学徒我现在在我的帖子中添加了一些信息以澄清问题。