1
resposta

definição de variáveis.

ola, gostaria de entender melhor porque não foi definido em uma const ou let a varável "livro", uma ves que ela só vai aparecer depois do forEach. Não entendi como o VScode diferenciou livros de livro naquele caso. Grato pela atenção.

let livros = [] const endpointDaAPI= 'https://guilhermeonrails.github.io/casadocodigo/livros.json'

getbuscarLivrosdaAPI() const elementoParaInserirLivros = document.getElementById('livros')

async function getbuscarLivrosdaAPI() { const res = await fetch(endpointDaAPI) livros = await res.json() console.table(livros) exibirOsLivrosNaTela(livros) }

function exibirOsLivrosNaTela(listadelivros){ ** listadelivros.forEach(livro => {** elementoParaInserirLivros.innerHTML += <div class="livro"> <img class="livro__imagens" src="${livro.imagem}" alt="${livro.alt}" /> <h2 class="livro__titulo"> ${livro.titulo} </h2> <p class="livro__descricao">${livro.descricao}</p> <p class="livro__preco" id="preco">R$${livro.preco}0</p> <div class="tags"> <span class="tag">${livro.categoria}</span> </div> </div> }); }

1 resposta

A variável livros é definida com let no início do código, enquanto a variável livro é usada dentro da função exibirOsLivrosNaTela() como um parâmetro do método forEach(). A diferença entre elas é que livros é uma variável que existe no escopo global do código, enquanto livro é uma variável local que só existe dentro da função exibirOsLivrosNaTela().

A variável livros é usada para armazenar a lista de livros retornada pela API, enquanto a variável livro é usada para representar cada um dos livros da lista durante a iteração com o método forEach(). Como a variável livro só é usada dentro da função exibirOsLivrosNaTela(), ela não precisa ser definida no escopo global.

A variável livro é apenas usada para ler os dados de cada livro da lista, é geralmente usado item ou items, em um método de mapeamento forEach(item => {, mas o nome escolhido é mais para o melhor entendimento dos desenvolvedores.