Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.04.2020, 13:45
Кандидат Javascript-наук
Отправить личное сообщение для jaroslav.tavgen Посмотреть профиль Найти все сообщения от jaroslav.tavgen
 
Регистрация: 18.09.2014
Сообщений: 128

Как передавать в функцию условие для цикла while?
Код, приведённый ниже, повторяет себя 3 раза:

let foo = 3;
while(foo < 10){
    console.log("Hi!");
    foo++;
}
foo = 12;
while(foo%8 != 0){
    console.log("Hi!");
    foo++;
}
foo = 25
while(foo <= 38){
    console.log("Hi!");
    foo++;
}

Это не по фен-шую соответствует принципу DRY.

Можно было бы выделить функцию:

function print_hi(foo, *condition*){
    while(condition){
        console.log("Hi!");
        foo++;
     }

и вызывать её так:

print_hi(3, foo < 10);
print_hi(12, foo%8 != 0);
print_hi(25, foo <= 38);

Как это сделать?
Ответить с цитированием
  #2 (permalink)  
Старый 19.04.2020, 14:47
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,745

function print_hi(foo, condition){
    while( condition (foo) ){
        console.log("Hi!");
        foo++;
     }
}


print_hi(3, x => x < 10);
print_hi(12, x =>  x%8 != 0);
print_hi(25, x =>  x <= 38);

Последний раз редактировалось voraa, 19.04.2020 в 14:54.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Посоветуйте как улучшить код для работы с history api [ jquery + js + history api ] Geo Ваши сайты и скрипты 0 12.01.2014 00:41
Расширение для Safari. Как вызвать функцию из popover в global page? housewm Opera, Safari и др. 0 21.12.2013 06:07
Как изменить скрипт, что бы им его можно было использовать для нужной страницы Nick50_70 Общие вопросы Javascript 0 28.04.2009 23:30
Можно ли как для произвольного массива создавать вызовы функций , имеющих на входе kefi Общие вопросы Javascript 3 17.04.2009 16:53
Как сделать функцию типа toDataUrl для рисунка в ie6 ? Олег Общие вопросы Javascript 2 14.09.2008 00:06