从API返回的多维数组提取指定元素并求平均,求学习资源指引
关于JavaScript多维数组处理的学习资源提问
我通过API获取到多维数组数据,已经提取出prices和total_volumes两个数组,每个数组包含30个带两个元素的子数组。现在需要提取每个子数组的第二个值(比如prices[0][1]到prices[29][1]),再计算它们的平均值,最终得到“价格平均值:X”和“交易量平均值:Y”。我已经花了一天时间走到当前步骤,但找不到合适的多维数组数据提取教程,不是要代码,而是想知道该学习哪些内容。
当前编写的代码
JavaScript代码
const api_url = "https://api.coingecko.com/api/v3/coins/ethereum/market_chart?vs_currency=usd&days=30&interval=daily" async function getEth() { const response = await fetch(api_url); const data = await response.json(); const { prices, total_volumes } = data; document.getElementById('price').textContent = prices; document.getElementById('volume').textContent = total_volumes; console.log(prices); console.log(total_volumes) } getEth();
HTML代码
<!DOCTYPE html> <html> <head> <title>CG API</title> </head> <body> Prices: <span id="price"></span><br /> </span><br /> Total Volumes: <span id="volume"></span></p> <script> </script> </body> </html>
建议学习的内容
数组遍历与转换:
map()方法
这是提取子数组指定元素的核心方法,它可以遍历数组的每个元素,返回一个由处理后的值组成的新数组。比如用prices.map(item => item[1])就能直接得到所有价格的数值数组,不用手动循环索引。数组归约计算:
reduce()方法
用来计算数组的总和非常方便,它可以把数组元素逐步累积成一个值。拿到总和后除以数组长度,就能得到平均值。数组基础操作巩固
熟悉数组的索引访问(array[index])、数组长度length属性,理解多维数组的层级结构——比如prices[i][j]就是访问第i个子数组的第j个元素。迭代方法补充
如果想了解更多遍历方式,还可以学forEach(),不过map()更适合需要生成新数组的场景;另外filter()虽然和当前需求无关,但也是数组操作的常用方法,可以一起了解。
内容的提问来源于stack exchange,提问作者Artistic S.'auro
相关产品推荐
相关产品推荐

