Ambos os códigos têm o mesmo propósito, que é buscar informações do clima de uma localidade específica. No entanto, eles utilizam técnicas diferentes para alcançar esse mesmo objetivo.
fetch('https://ipapi.co/json/')
é chamada para obter os dados de
localização do usuário.
.then
é executado quando a resposta é recebida. Ele
converte a resposta para o formato JSON.
.then
é chamado com os dados convertidos do passo
anterior. Ele usa a latitude e longitude dos dados para fazer outra requisição fetch e
obter a previsão do tempo local.
.then
é executado quando a resposta da segunda
requisição fetch
é recebida. Ele converte a resposta para o formato JSON.
.then
é chamado com os dados convertidos do passo
anterior. Ele atualiza as informações de temperatura e velocidade do vento na página.
.catch
é executado,
registrando o erro no console.
Em resumo, o primeiro código usa o método fetch() para fazer uma requisição HTTP para o servidor. Ele usa os dados de latitude e longitude buscados para fazer outra requisição HTTP para o servidor para obter informações de clima. Por fim, ele atualiza as informações de temperatura e velocidade do vento na página da web. Se houver um erro, ele é registrado no console.
async
indica que a função contém operações assíncronas.
await
é usada para pausar a execução da função até que uma
promessa seja resolvida ou rejeitada.
fetch
é chamada para obter os dados de localização do usuário, e a
resposta é atribuída a response1
.
!response1.ok
), um erro é lançado.
response1.json()
é usado para analisar o corpo da resposta como
JSON, e o resultado é atribuído a local
.
fetch
é feita para obter a previsão do tempo local, usando
a latitude e longitude de local
.
response2
, e o resultado é atribuído a clima
.
clima
.
try
, o bloco catch
é
executado. O erro é registrado no console, e um alerta é exibido ao usuário.