Почему ESLint запрещает использование for...of в решениях курса
В своем решении я использую цикл for...of, но ESLint выдает ошибки:
При этом в тексте урока в примерах встречается for...of. Почему курс запрещает его использовать и чем он хуже, чем for или forEach?
7 дней назад
Nikolai Gagarinov
Ответы
0
Основная причина запрета for...of в курсе — соблюдение стандартов кодирования и упрощение сборки кода:
for...ofтребует поддержки итераторов и генераторов, что иногда приводит к необходимости подключатьregenerator-runtimeили более тяжёлые полифиллы. Курс старается избегать лишнего веса кода.- Циклы считаются менее декларативными, чем методы массивов (
forEach,map,filterи др.), которые проще читать и легче поддерживать. ESLint по стандартам Airbnb рекомендует минимизировать побочные эффекты и использовать функции высшего порядка.
Почему for и forEach разрешены:
- Цикл
for— простой, хорошо поддерживаемый, не требует полифиллов. Используется, когда нужен прямой контроль над индексами или количество итераций заранее известно. forEach— функциональный подход, минимизирует побочные эффекты, соответствует современному стилю работы с массивами.
Вывод:
- В учебных примерах
for...ofдопустим для понимания, как работают итерации. - В проверяемых решениях курса предпочтительнее
forEachили обычныйfor. - Если хотите использовать
for...of, приходится отключать правило ESLint через комментарий:
Но для соответствия стилю курса лучше привыкнуть к методам массивов.
Ссылки для изучения:
7 дней назад
Nikolai Gagarinov
Похожие вопросы