Можно ли комбинировать фильтр и карту Underscore? В настоящее время у меня есть два отдельных вызова функций, но мне интересно, могу ли я сделать их более эффективными, объединив их в один вызов. Как-то.
В основном у меня есть массив имен стран - я хочу отфильтровать их с помощью регулярного выражения, а затем отобразить отфильтрованные результаты в массив объектов DataItem. Это мой текущий код:
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']);
});
Любые другие советы для повышения эффективности также будут с благодарностью восприняты.