1
resposta

[Dúvida] let livros = [ ]

Boa noite!!

Ao fazermos requisições HTTP com a Fetch API, é comum criarmos essa variável recebendo uma array vazia fora da função assíncrona como let ? Outra pergunta: porque a mesma foi criada como let e não como const ou var?

Entendi mais ou menos essa parte, só sei que com essa array livros fora da função assíncrona facilitou reutilizar a resposta da requisição mas não sei se é por causa da let, se alguem puder me confirmar e me dar um exemplo ficarei grato!

1 resposta

Oi, Frank

Evite o uso do "var"

O "let" pode ser redeclarado ( = ). O "const" não

Toda vez que usamos o igual ( = ), nós redeclaramos uma variável

No exemplo do curso:


let livros = []; // não importa o tipo, pois "livros" vai ser redeclarado
const endpointDaAPI = 'https://guilhermeonrails.github.io/casadocodigo/livros.json'
getBuscarLivrosDaAPI()

async function getBuscarLivrosDaAPI() {
    const res = await fetch(endpointDaAPI)
    livros = await res.json();  // redeclarado. Não seria possível se fosse do tipo "const"
    livros = aplicarDesconto(livros);  // redeclarado novamente
    exibirOsLivrosNaTela(livrosComDesconto)
}

Entenda a diferença entre var, let e const no JavaScript