2016-07-29 2 views
1

У меня есть функция, которая должна завершить свое задание, чтобы снова перезапустить, и это для бесконечного времени в nodejs.Как подождать окончания функции в бесконечном цикле?

Так что я просто хочу создать бесконечный цикл, синхронный, который выполняется только по функции.

Я пробовал много вещей, но все, что я тестировал, не сработало.

В других синхронных языках, эта функция будет выглядеть так:

while(42) { 
myfunc(); 
} 

И эта функция возвращает обещание.

Вы можете мне помочь?

+0

'вар FUNC = х => {console.log (х); return new Promise (r => setTimeout (_ => r (x), 1000))}, loop = x => func (x). then (loop); loop (41) .then (console.log) ' – caub

ответ

3

«И эта функция возвращает обещание».

myfunc().then(myfunc) 

UPD. Demo.

function run() { 
    myfunc().then(run) 
} 

run() 
+0

Это не работает, он выполняет функцию один раз, затем останавливается –

+0

Я обновил ответ. Вам действительно нужна еще одна функция для запуска цикла. –

0
function yourFunction() { 
    // Do your stuff 
    // If not done: 
    return false; 
    // When everything is really done: 
    return true; 
} 

И в то время как контур:

while(yourFunction()) {} 
Смежные вопросы