-1

Keeps adding to 0 or undefined in Javascript...

var unit_count=[];

 function ua(){
    var xhr1 = new XMLHttpRequest();

TomZilla
  • 33
  • 2
  • 6

1 Answers1

0

You are returning on the function "ua" and "unit_count " is undefined because its being set in "processRequest" and only "onreadystatechange" event of "XMLHttpRequest".

You can use a synchronous request in that case. Example:

function ua(yardi){
    const xhr1 = new XMLHttpRequest();
    xhr1.open('GET', "https://api.f.com/api.aspx?" + yardi, false); // `false` makes the request synchronous
    xhr1.send(null);

    const unit_count=[];
    if (xhr1.status === 200) {
        const response1 = JSON.parse(xhr1.responseText);
        response1.forEach(item =>{
            unit_count.push(parseInt(item.AvailableUnitsCount));
        });
    }

    return unit_count.reduce((a, b) => a + b, 0);
}
filipe
  • 1,957
  • 1
  • 10
  • 23