function myFunction() {
diff = 2;
var l = 12;
b = document.getElementById("yee").value;
var a = Number(document.getElementById("base").value);
var aa = (a * b) / 100;
z = aa;
var r = "";
k = 0;
m = 0;
e = 0;
z = 0;
const yr_arr = [];
for (var i = 0; i < diff; i++) {
if (i) {
var hk = (aa * document.getElementById("per").value) / 100;
aa += Number(hk);
}
n = m;
for (var j = 0; j < l; j++) {
var d = ((aa * n) * 5) / 12 / 100;
var f = d+z;
r += k + 1 + ") " + aa.toFixed(2) + "---" + f.toFixed(2) + "<br/>";
k++;
n++;
yr_arr.push({ x: aa });
}
r += "";
m++;
z = z + d;
}
const yr_result = yr_arr.reduce( ( sum, { x } ) => sum + x , 0);
document.getElementById("yr_demo1").innerHTML += yr_result.toFixed(2);
document.getElementById("demo").innerHTML += r;
}<div>
<span>Base Quantity</span>
<input type = "text" id = "base" value = "10000" />
</div>
<div>
<span>Base Percent</span>
<input type = "text" id = "yee" value = "12" />
</div>
<div>
<span>Whole Percent</span>
<input type = "text" id = "per" value = "10" />
</div>
<button onclick = "myFunction()">Click</button>
<p id = "demo"></p>
<p id = "yr_demo1"></p>Здесь я пытаюсь рассчитать некоторый процент и отображать его. Кроме того, я пытаюсь получить общее значение 2-го столбца. Я достиг этого, используя сокращение javascript.
Например, в приведенном выше коде вы можете видеть, что 1200 отображается 12 раз, а 1320 — следующие 12 раз. И я могу получить общее значение 30240 (12*1200+12*1320). Но я также хочу напечатать его для каждых 12 счетов. Я хочу показать значение 14400 после 12 подсчетов и 15840 после следующих 12 подсчетов.
Результат, что я ожидаю



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вместо того, чтобы вычислять сумму после генерации массива, вы уже можете вычислить ее во время генерации в первом цикле for.
Затем вы можете использовать Остаточный оператор %, чтобы проверить, делится ли ваш индекс i на 12, и добавить свою строку в r.
…
yr_arr.push({ x: aa });
}
sum += aa;
if (i % 12 === 0) r += aa + "<br/>";
Тогда нет необходимости в вашем отображении.
Я проверил свой код на codepen, он там работает. Вы инициализировали sum как var sum=0; в начале?
Нет, это просто напечатать 1200 после 12 счетов. Он не вычислял значения.