Solucionado (ver solução)
Solucionado
(ver solução)
6
respostas

Iteração no obj para extrair array

Por que não esta me retornando a coleção de arrays quando faço essa iteração no obj? Como fazer corretamente?

{"dataB":[2520,1500,6062,3652,4564,1234,630,2364],"dataA":[5600,2600,2017,3456,7897,4564,4564,2312],"label":["Janeiro","Fevereiro","Maio","Abril","Junho","Maio","Maio","Março"]}
$.each(data, function(i, obj){
                    dataLabel = obj.label);
                    dataCol1  = obj.dataA);
                    dataCol2  = obj.dataB);

                });
6 respostas

Cara, bom dia,

Eu não cheguei a testar o código, mas eu vi que nessa parte

dataLabel = obj.label); dataCol1 = obj.dataA); dataCol2 = obj.dataB);

tem uns parenteses a mais.

deixa só

dataLabel = obj.label; dataCol1 = obj.dataA; dataCol2 = obj.dataB;

Coloquei com os parênteses, foi um erro meu, mas mesmo assim, não roda o código!

Cara, fiz uns testes aqui.

Tenta assim:

let dataLabel = null;
let dataCol1 = null;
let dataCol2 = null;

const data = {"dataB":[2520,1500,6062,3652,4564,1234,630,2364],"dataA":[5600,2600,2017,3456,7897,4564,4564,2312],"label":["Janeiro","Fevereiro","Maio","Abril","Junho","Maio","Maio","Março"]}

$.each(data, function(i, obj){
    dataLabel = data[i];
    dataCol1  = data[i];
    dataCol2  = data[i];
});

console.log(dataLabel, dataCol1, dataCol2);

Preciso mostrar a coleção de arrays que esta em label: [], dataA: [] e dataB: [].

solução!

Resolvido aqui: Tive que fazer um parse no obj.

data = $.parseJSON(data);
                 console.log(data.label);
                 console.log(data.dataA);
                 console.log(data.dataB);

Consegui a saída correta:

Array [ "Janeiro", "Fevereiro", "Maio", "Abril", "Junho", "Maio", "Maio", "Março" ]  chartjs.js:27:9
Array [ 5600, 2600, 2017, 3456, 7897, 4564, 4564, 2312 ]  chartjs.js:28:9
Array [ 2520, 1500, 6062, 3652, 4564, 1234, 630, 2364 ]

Caramba que massa, então show :D

Parabéns mano