2
respostas

Duvida! É possível passar um código for para forEach

É possível transformar esse código em forEach? E como?

const nota1 = [10, 6.5, 8, 7.5] const nota2 = [9, 6, 6] const nota3 = [8.5, 9.5,]

const todasnotas = [nota1, nota2, nota3]

let d = 0

for (let i= 0; i < todasnotas.length; i++) { for (let j= 0; j < todasnotas[i].length; j++) { d += todasnotas[i][j]/todasnotas[i].length; } }

console.log(d)

2 respostas

Oi, Cesar! É possível, sim!

A lógica é a mesma, mas como forEach já retorna os valores da array pela função callback, não é preciso usar os colchetes:

// ... declaração de variáveis acima

todasnotas.forEach(function(subArray) {
    subArray.forEach(function(valores) {
        d += valores / subArray.length;
    });
});

O primeiro forEach vai lhe retornar as sublistas dentro da matriz, enquanto o segundo forEach te retorna os valores propriamente ditos dentros da sublista.

Valeu!!