title: JavaScript: global array variable returned undefined
body: <p>JavaScript newbie here.  I've searched and searched for answers and can't seem to figure this out.  The arrays that I'm passing to a function aren't being passed as references properly.  I don't think this is an async issue like many posts allude to but I could be wrong.</p>
  
  <p>I have global arrays that I'm passing to a function.  Inside the function, the arrays return their proper values, but when I try to access them outside of the function, they are undefined.  </p>
  
  <p>For context, I'm passing 3 arrays that hold the dry-bulb temperature, wet-bulb temperature, and hour that the measurements were taken for later calculations.  I've only included a few sample data points for brevity.  Sample code below:</p>
  
  <pre><code>function run(){
      var hour = [];
      var db = [];
      var wb = [];
      var cities = ["AB Edmonton","MI Detroit"];
      getData(hour, db, wb, cities); 
      //this shows undefined, although within getData it is accurate data
      alert(hour[1]);
  }
  
  function getData(hour, db, wb, cities){
      //i= drop-down selection index, set to zero for testing
      i=0;
  
      switch(cities[i]) {
          case "AB Edmonton":
              hour = [1,2,3];
              db = [15,18,21];
              wb = [10,13,20];
              break;
          //case "MI Detroit":....
      }
  
      //this shows accurate values in the alert window
      alert(cities[i] + " at hour:" + hour[i] + " the temp is:" + db[i]);
  
      return [hour, db, wb];
  };
  </code></pre>