javascript - 计算内部数组的数量和数组?
问题描述
如何计算数组中数组中数字的平均值?
查看我如何获取数据的图像;
const reviews = [
0: ["5", "1"]
1: ["4"]
2: ["1", "4", "1"]
3: ["1", "4"]
4: ["5", "4"]
5: []
etc etc
]
我想知道每个数组的平均值,所以:
0: 3
1: 4
2: 2
etc etc
我在 React 中工作。我从 React-Redux 中的选择器获取数据。我用它来计算每个用户的平均评论。
代码:
const reviews = users
? users.map((review) => {
return review
? review.reviews.map((reviewen) => {
return <p>{reviewen.review}</p>;
})
: "loading ";
})
: "Loading";
console.log(reviews);
解决方案
我想你正在寻找这样的东西:
const reviews = [
["5", "1"],
["4"],
["1", "4", "1"],
["1", "4"],
["5", "4"]
];
const avgReviews = reviews.map(x => (x.reduce((a,b) => parseInt(a) + parseInt(b), 0) / x.length));
console.log(avgReviews);
或者,您可以创建一个新数组,将平均值与计算它的数组结合起来。
const reviews = [
["5", "1"],
["4"],
["1", "4", "1"],
["1", "4"],
["5", "4"]
];
const reviews_and_average = reviews.map(x => [x,(x.reduce((a,b) => parseInt(a) + parseInt(b), 0) / x.length)]);
console.log(reviews_and_average);
推荐阅读
- php - {{Config::get('app.url')}} 的未定义类配置和路径
- r - 使用 strptime() 将 csv 字符串读取为 R 的时间格式
- javascript - Centering Footer Content
- nuget - 使用 Azure Devops 发布 Nuget 包
- java - 从操作框菜单项打开新活动并关闭实际活动
- java - MethodHandle 比 Reflection 慢?
- python - MNIST 数据集缺失类
- python - 在 python 2.7.10 中从 flask_mysqldb 导入 MySQL 时出错
- javascript - 使用 getElementById 验证函数
- reactjs - React Native - 如何使 ScrollView 组件的垂直滚动条永久化?