0

In a function to obtain certain data with a json, I want to use this data in a variable and then use it in another function. The problem is that it does not work for me

First of all, obtaining the data with a json and printing it in place on the screen, until now, the problem starts when I save the data in a variable

function cargarPropuestas() {
var peticionLoc = new XMLHttpRequest();
peticionLoc.open('GET', 'https://api.ipdata.co/es?api-key=b3ae31a7a74386088875d7d285250b58778e13de985b2f561910b6bd');
peticionLoc.onload = function () {
    var datosLoc = JSON.parse(peticionLoc.responseText);
    var elementoLoc = document.createElement('div');
    elementoLoc.innerHTML += (datosLoc.city + ', ' + datosLoc.country_name);
    loc.appendChild(elementoLoc);
    var country = datosLoc.country_name;
}
peticionLoc.send();

What interests me here is the variable COUNTRY

And here the problem begins, since when I "leave" the requestLoc.onload = function () {} I can not call the variable COUNTRY to use it below

What I need is to know how to get the information of this variable out of the function, in order to use that data

1 Answers1

-1

You can declare country outside both functions.

var country;

function cargarPropuestas() {
//...
   peticionLoc.onload = function () {
//...
      country = datosLoc.country_name;
   }

   peticionLoc.send();
}
mbojko
  • 13,503
  • 1
  • 16
  • 26