Переменные, с которыми вы работаете, отформатированы немного иначе, чем ваш код подразумевает, что вы ожидаете их.
Если вы откроете консоль и получите доступ к переменной window.location.href, вы увидите еесодержит полный действительный URL-адрес, а не относительный формат, по которому следуют ссылки в вашей навигации, поэтому ваш абсолютный тест (===) будет каждый раз терпеть неудачу, поскольку они никогда не будут равны.
/11438625/esli-operator-ne-rabotaet-s-classlist-dobavit
не равно
if-statement-not-working-with-classlist-add
Вы можете решить эту проблему, сделав навигационные ссылки абсолютными, но это вызовет у вас больше проблем в будущем.
Если вы измените свой тест, сравнивая оба теста с поискомдля href навигации внутри переменной path ваш код будет работать.Кроме того, вам необходимо проверить атрибут href вашего объекта, а не сам объект.
Изменить:
if (navClass[i] === path) {
Кому:
if (path.includes(navClass[i].href)) {
Отредактировано: Забыл добавить атрибут .href к предлагаемому изменению