gpt4 book ai didi

javascript - 平均问题

转载 作者:行者123 更新时间:2023-12-01 01:59:57 24 4
gpt4 key购买 nike

我在 JavaScript 中有以下函数来计算平均值:

function calculaMediaFinal () {
var soma = 0;
for(var i = 1; i>5; i++) {
soma += parseInt(document.getElementById('resultado' + i).value, 10);
}

var media = soma / 5;

var inputCuboMedia = document.getElementById('ConcretizaObj');
inputCuboMedia.value = parseInt(media, 10);
}

function ContarObjetivos() {
let contador = 0;
if(document.getElementById('resultado' + i).value) {
contador++;
}
}

但是我有一个问题,那就是我输入的最多有 5 个,这是不正确的,因为用户可以选择他想要的结果数量。也就是说,如果用户只想要 4,那么 5 就不能填。如何在没有数字 5 但用户想要的结果数的情况下进行平均?

最佳答案

你可以这样做。

  • 创建 input 元素并让用户将每个数字传递到其中,并用空格分隔
  • 创建将触发计算平均值的代码的按钮
  • 创建将存储结果的元素

执行实际计算

  • 获取输入字段的值,在空格处分割它' ,使用trim删除每个单独数字周围的空格
  • 使用 reduce 对上一步中创建的数组求和
  • 将总和除以提供的数字数量

const input = document.querySelector('input');
const btn = document.querySelector('button');
const res = document.querySelector('p > span');

function getAverage() {
const values = input.value.split(' ').map(v => v.trim());
const sum = values.reduce((acc, v) => acc + Number(v), 0);
res.textContent = (sum / values.length);
}

// 1 2 3 4 5 6 7 8 9 10
btn.addEventListener('click', getAverage);
<input type='text' />
<button>get average</button>
<p>result: <span></span></p>

将数字一一传递到输入字段中,并用空格分隔(尝试传递 1 2 3 4 5 6 7 8 9 10),然后单击按钮执行计算,然后将显示计算结果在 span 元素中。

关于javascript - 平均问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50676594/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com