title: How to synchronously call a set of functions in javascript
body: <p>I am working on a javascript project that needs to get some data and process it, but I am having trouble with the asynchronous nature of JavaScript. What I want to be able to do is something like the following.</p>
  
  <pre><code>//The set of functions that I want to call in order
  function getData() {
      //gets the data
  }
  
  function parseData() {
      //does some stuff with the data
  }
  
  function validate() {
      //validates the data
  }
  
  //The function that orchestrates these calls 
  function runner() {
      getData();
      parseData();
      validate();
  }
  </code></pre>
  
  <p>Here I want each function to wait for completion before going on to the next call, as I am running into the situation where the program attempts to validate the data before it has been retrieved. However, I also want to be able to return a value from these functions for testing, so I can't have these functions return a boolean value to check completion. How can I make javascript wait on the function to run to completion before moving on to the next call?</p>