title: execute request in loop in order
body: <p>I have the following: </p>
  
  <pre><code>var request = require('request')
  var j = request.jar()
  var url1 = "www.google.com"
  var url2 = "www.google.com/images"
  request({url: url1,jar: j}, function() {
  ...
   for (var i = 0; i &lt; list.length; i++) {
  // list is just an item from a json response. 
  // I need map the list[i] with the body into a JSON object. 
  // But if I move the this to the request it get the last item and not each. 
  console.log(list[i])
  request({url: url2,jar: j}, function(err, response, body) {
            // This print after all the list[i] has printed 
            body = JSON.parse(body)
            console.log(body);
          });
  }
  });
  </code></pre>
  
  <p>I would like the JSON array to be something like </p>
  
  <pre><code>[{a: list[i], b: body}, {a: list[i], b: body}]
  </code></pre>
  
  <p>Question in the code comment. I'm no to javascript/node. I might not be understanding how things work. </p>