Я пытаюсь получить сумму итогов на основе квартальной системы. [10,20,30,40,50,60,70,80,90]
- Initial массивРасчет суммы на основе кварталов
В результате я ищу это [60, 150, 70, 80, 90]
Где Q1 = 10+20+30 = 60
Q2 = 40+50+60 = 150
Q3 будет завершена только если передача стоимости октября.
Я путать с логикой у меня есть
var adata = [10,20,30,40,50,60,70,80,90];
process(adata, "Sept 2014");
function process(adata, date){
var today = new Date(date) || new Date();
var aQuarter = [];
\t var tempQuarter = [];
var aSum = [];
//var quarter = Math.floor((today.getMonth() + 3)/3);
for(var i = 0; i<= today.getMonth(); i++) {
aQuarter.push(adata[i]);
}
tempQuarter = adata.slice();
if(tempQuarter.length > 3) {
\t \t var i = 0;
var sum = [];
\t \t while(i <= 2) {
\t \t \t sum[i] = aQuarter.shift();
\t \t \t i++;
\t \t }
console.log(sum);
\t \t aQuarter.unshift(sum);
\t }
if(tempQuarter.length > 6){
\t \t var i = 0;
var sum = [];
\t \t while(i+1 <= 3) {
\t \t \t sum[i] = aQuarter.shift();
\t \t \t i++;
\t \t }
\t \t aQuarter.unshift(sum);
\t }
console.log(aQuarter);
if(tempQuarter.length > 9){
\t \t var i = 0;
\t \t while(i+2 <= 4) {
\t \t \t sum[i] = aQuarter.shift();
\t \t \t i++;
\t \t }
\t }
}
Вы говорите, что результат должен быть .. '[60, 150, 80, 80, 90]'. Разве вы не подразумеваете '[60, 150, 70, 80, 90]'? – Bijan
извините, мой плохой. Я имел в виду '[60, 150, 70, 80, 90]'. Обновлено! – user525146