Вы можете использовать filter
:
var available_cars = cars.filter(function(car) { return !car.hasClass("filtered-out"); }).length;
Это более лаконично с функцией стрелки ES2015 +:
var available_cars = cars.filter(car => !car.hasClass("filtered-out")).length;
Если вы можете сделать cars
объектом jQuery вместо массива (вы, похоже, используете его в качестве массива в своем вопросе), это будет:
var available_cars = cars.filter(":not(.filtered-out)").length;
В этом вопросе cars
рассматривается как массив (cars.forEach
), но отдельные элементы рассматриваются как объекты jQuery (element.hasClass
), поэтому я сделал это в первом фрагменте выше. Хотя это странно.