Estoy usando la API de avisos. Como dice el título, cuando ingreso los datos JSON en la variable, así:
let advi; fetch("https://api.adviceslip.com/advice").then(r => r.json()).then(adv => advi = adv); Me da el error que te comento. Sin embargo, cuando reemplazo .then(adv => advi = adv) con .then(console.log) me da un objeto con el consejo. Sin embargo, dado que no quiero simplemente consolar. registrar el consejo, ya que necesito usarlo en mi sitio web, necesito encontrar una manera de usarlo en una variable.
índice.js
function showData() { let advi; fetch("https://api.adviceslip.com/advice").then(r => r.json()).then(adv => { advi = adv; console.log(advi); }) } showData();Si está intentando iterar advi justo debajo de llamar a la API de fetch , sí, la variable advi aún no está definida, porque fetch es una API web que es asíncrona.