Добрый день. Сейчас прохожу вторую часть Кекстаграма, и у меня возник вопрос, почему для удаления класса active в списке фильтров используется цикл вообще по всему списку?
for (var i = 0; i < controls.length; i++) {
controls[i].classList.remove('active');
}
Не рациональнее ли внутри цикла создавать переменную только с теми элементами, которые имеют класс active? И сразу удалять этот класс. В таком случае достаточно использовать querySelector вместо querySelectorAll, т.к. всегда будет максимум один такой элемент.
var activeControl = document.querySelector('.toggle-controls .active');
if (activeControl) {
activeControl.classList.remove('active');
}