Estoy tratando de hacer una función y pasarle una URL y devolver los datos de la URL en json o matriz. cuando llamo a la función, primero obtengo una matriz vacía y luego se llenará. hay un pequeño retraso es adivinar. No puedo iterar entre los datos y no puedo usar los datos porque la matriz está vacía en ese momento. aquí está la función:
function fetch_api(url){ const data = new Array(); const getproducts = new XMLHttpRequest(); getproducts.open('GET',url); getproducts.send(); getproducts.onload = function(){ if(getproducts.status == 200){ data.push(JSON.parse(getproducts.responseText)); }else{ throw new Error('fetching api failed!'); } } return data; }y
const data = fetch_api(all_products_api); console.log(data);resultado: captura de pantalla