我想要一个JavaScript函数,将数字数组减少到这些数字的平均值。我的功能代码如下所示:
Array.prototype.avg = function(ignoreZero = false) {
return (this.reduce(function(a, b) {
return a + b;
}) / (this.length));
};
但是我知道这可能导致带有小数点的有理数字的值不准确,因为在JavaScript中处理数字的方式,因此平均值可能不准确。
我不清楚这个问题存在的原因(我不太了解浮点数),但我想知道是否有一个简单的解决方案。
似乎大多数人只是建议将十进制分量与有理数相乘,但由于我不知道有理数可能有多少小数,因此该解决方案无法工作。
答案 0 :(得分:1)
js社区有一个解决javascript的每个固有功能的解决方案所以... Bam有一个库。