Black November

ATÉ 50% OFF

TÁ ACABANDO!

0 dias

0 horas

0 min

0 seg

Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Consumir JSON ao carregar página com JavaScript

Caros, preciso consumir dados JSON ao término do carregamento da página com JavaScript. Fiz da seguinte forma:

document.addEventListener("DOMContentLoaded", function(event) {

    var xhr = new XMLHttpRequest();
    xhr.open("GET", "http://www.exemplo.com/exemplo");

    xhr.addEventListener("load", function(){
        var response = xhr.responseText;
        var products = JSON.parse(response);

        products.forEach(function(product){
            console.log(product);
        });
    });

    xhr.send();
  })

Porém, dá o seguinte

Uncaught TypeError: products.forEach is not a function
    at XMLHttpRequest.<anonymous>

Obs: Fiz a chamada do arquivo .js externo no final do documento HTML.

Poderiam me dizer o que estou fazendo de errado? Muito obrigado.

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
1 resposta
solução!

O erro que esta acontecendo é que ele não esta reconhecendo forEach como uma função. O que pode estar acontecendo que o objeto "parseado" pelo JSON não ser uma array, dai a função forEach não poderá ser chamada dessa forma. Faz o seguinte, joga o resultado da sua consulta no console com:

console.log(products);

E ve se o que esta sendo parseado realmente é uma array.