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

Array push gerando um array 2D

Pessoal, estou usando o array.push para preencher um array vazio, porém ao dar um console.log o array aparece desta forma:

http://imgur.com/a/X1nCo

Coloquei o print do log do console para vocês verem.

Minha dúvida é como eu posso acessar esses dados se eu dou console.log(array[0]) aparece undefined

7 respostas

Boa tarde, Alan! Tudo bem? =)

Você poderia postar o código aqui, por favor? Assim podemos ajudá-lo com mais precisão. =)

Abraço,

Fábio

Não é nada complexo Fábio, estou trabalhando com a API do Google para adicionar marcadores no mapa.

var markers = [];
function fazMarcacao(marcador) {
            var latlngbounds = new google.maps.LatLngBounds();

            var marker = new google.maps.Marker({
                map: map, 
                position: marcador.posicao
            });

            var opcoes = {
                content: "<p>Conteúdo do InfoBox</p>",
                pixelOffset: new google.maps.Size(-150, 0)
            };

            infoBox[marcador.id] = new InfoBox(opcoes);
            infoBox[marcador.id].marker = marker;

            infoBox[marcador.id].listener = google.maps.event.addListener(marker, 'click', function (e) {
                abrirInfoBox(marcador.id, marker);
            });

            markers.push(marker);

            latlngbounds.extend(marker.position);                
        }

Alan,

Aquele log com um array de tamanho 11 foi o console.log(markers)?

E o undefined está aparecendo quando você faz um console.log(markers[0])?

Fábio

Exatamente Fábio, desculpe a demora. Só não sei como acessar se ele está dentro de um "array vazio"

solução!

Alan,

Também estou com certa dúvida para lhe ajudar nesse caso, mas se puder, faça o seguinte teste:

markers.forEach(function(e) {
    console.log(e);
});

E, se puder, coloque a saída aqui, por favor. =)

Fábio

Fábio, este foi o retorno. Muito obrigado. Mas agora o problema é a função só é executada no segundo click :/

Array[0]
0:Object
    endereco: "Rua Doutor Miguel Penteado"
    id: 0
    nome: "ISO CLEAN SERVIÇOS LTDA"
    numero: "1038"
1:Object
2:Object
3:Object
4:Object
5:Object
6:Object
7:Object
8:Object

Alan, tudo certo? =)

Conseguiu resolver? Não consegui chegar numa solução para seu problema ainda... =|

Fábio