title: I set ajax async: false but not working
body: <p>I'm trying to get json form other domain, my code is as below:</p>
  
  <pre><code>var token = '';
  function getData(){
    console.log("get data suc");
    for (var i=0; i &lt; urls.length; i++){
       var code = 'http://example.com/api/'+ urls[i];
       $.ajax({
         async: false,
         url: code,
         type: 'GET',
         dataType: 'jsonp',
         success: function(data) { showData(data); },
         error: function() { console.log('ajax Failed!'); },
         beforeSend: setHeader,
       });
    }
  }
  function showData(data){
    $("&lt;tr&gt;&lt;/tr&gt;").append("&lt;td&gt;" + data + "&lt;/td&gt;")
      .appendTo("#results");
    console.log(data);
  }
  function setHeader(xhr) {
    xhr.setRequestHeader('Authorization', token);
  }
  </code></pre>
  
  <p>This result should be display as order the key I gave from array urls.
  ex: urls = [1,2,3,4]→should get [one,two,three,four]
  but I always get the wrong order!(ex: [two,one,three,four] or [three,four,two,one])
  What happened?
  Is that "async: false" didn't work? And why?</p>