@komarevtsev

Какой паттерн выбрать?

Имеется код:
if (foo) {
var bar = true;
} else
{
var bar = false
}

for (var i = ...) {
if (bar) { // Сделать опр. действие} else {// Сделать другое действие }
}

Пример очень упрошенный, но суть думаю ясна.
Каждый раз в цикле проверять условие плохо для производительности, поэтому первая мысль в зависимости для каждого условия написать свой цикл.
НО: условий может быть несколько, а тело цикла длинное и в итоге будем иметь вместо 100 строчек - 200, а то и больше.
Возможно существует более "красивый" вариант решения данной проблемы?
  • Вопрос задан
  • 200 просмотров
Пригласить эксперта
Ответы на вопрос 1
bingo347
@bingo347 Куратор тега JavaScript
Crazy on performance...
function myLoop(foo, bar) {
  for(var i = 0; i < foo; i++) {
    //...
  }
}

if(foo && bar) {
  myLoop(foo, bar);
} else if (foo || bar) {
  myLoop(foo || 10, bar || 15);
} else {
  myLoop(100, 200);
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы