Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
3
respuestas

Barras / Recorrer 2 arrays al mismo tiempo

Tengo inconveniente para recorrer el array colorGraph utilizando el mismo for .. of, es posible?

Tuve que utilizar un contador para recorrer la lista de colores pero quiero optimizar el código y usar el mismo for es posible?

            var serie2019 = [81, 9, 3, 3, 4];
            var colorGraph = ["Blue","Green", "Yellow", "red", "black"];

               const dibujarBarra = (porcent,listColor) =>{
                    let prev = 0;
                    let rand;
                    let col = 0;
                    for (let a of porcent){
                        pincel.fillStyle = listColor[col];
                        pincel.fillRect (horizontal,prev, 50, a*2);
                        prev = prev + a*2;
                        col++;
                     }
                    horizontal = horizontal + 70;
         };
3 respuestas
solución!

Se puede hacer perfectamente (siempre que los vectores tengan el mismo tamaño) , pero acá te estás complicando. Como ambos vectores tienen el el mismo tamaño sólo necesitas un índice para recorrerlos. Para esto, al menos en este nivel te conviene usar un for "común" y acceder a los elementos de array con el índice.

Y es posible obtener el indice del for .. of..?

De forma básica, parece que no se puede, pero existe un método entries() en los array que devuelve el índice y el elemento. De acá saqué la información (perdón que está en inglés): https://flaviocopes.com/how-to-get-index-in-for-of-loop/