【发布时间】:2021-05-04 08:40:05
【问题描述】:
我需要计算这种平均值:
stars = [["3", "ciccio"];["5", "ciccio"];["1", "ciccio"];["1", "ciccio"];["5", "ciccio"];["2", "caramella"]]
我想要的是:
avrgArr = [[3, ciccio];[2, caramella]]
我的代码是:
var moon = stars.length-1;
for (var y = 0; y < stars.length; y++) {
avrg= parseInt(stars[y][0]);
for (var z = 1; z < moon; z++) {
if (stars[y][1] === stars[z][1]) {
avrg+= parseInt(stars[z][0]);
count++;
}
}
avrg= avrg/ count;
avrgArr.push([avrg, stars[y][1]]);
}
但是这段代码给了我每个元素的平均值,比如:
avrgArr = [[3.75, ciccio];[2.125, ciccio];[1.0833333333, ciccio];[0.8125, ciccio];[0.85, ciccio];[0.1 caramella]]
我该如何解决这个问题?谢谢你:)
【问题讨论】:
-
为什么将数字作为字符串存储在数据中?
-
@Alnitak 这些数字来自复选框,我正在存储字段“值”
-
最佳做法是尽早将这些
.value字段转换为适当的数字。 -
@Alnitak 我在我的代码中解析了它们
标签: javascript arrays multidimensional-array average parseint