title: How to achieve maximum efficiency with underscore's map and filter?
body: <p>Is it possible to combine Underscore's filter and map? I currently have two separate function calls, but I'm wondering if I can make them more efficient by combining them into a single call, somehow.</p>
  
  <p>Basically I have an array of country names - I want to filter them using a regex, then map the filtered results to an array of DataItem objects. This is my current code: </p>
  
  <pre><code>var filteredData = _.filter(allCountries, function(n, i){ 
    var re = RegExp("^" + searchString, "i");
    if (re.exec(n['country'].toLowerCase()) !== null) {
      return true;
    }
  });
  var mappedData = _.map(filteredData, function(n, i){ 
    return new DataItem(i, n['name'], n['budget']);
  });
  </code></pre>
  
  <p>Any other tips for improved efficiency would also be gratefully received. </p>