var data = response.data;
var category3 = data.filter(function(el) {
return el.categoryid === '3';
});
var category3Lendth = category3.length; // длина
Алексей, ну я тесты проводил c миллионнами записей. Даже цепочный вызов map().filter().map() выполняется быстрей reduce c аналогичными операциями в большинстве браузеров. Не стоит забывать, что важную роль играет реализация этих методов на нативном уровне.
скриншот с того теста
Главный недостаток тут именно ущерб читаемости. Приходится разбирать всю логику, чтобы понять что происходит. С filter же все сразу ясно и можно обратить внимание только на условие.
dom1n1k, да тут важней работа с памятью. Причем этот код выполнится быстрей на reduce как раз по причине того, что массив не копируется. У V8 судя по тесту с этим хуже всего.