2016-07-29 70 views
1

我有一个函数,必须完成它的工作再次重新启动,并在无限时间在nodejs。如何等待函数在无限循环中完成?

所以我只是想创建一个无限循环,同步,只在函数上执行。

我尝试了很多东西,但我测试的所有东西都没有工作。

在其它同步语言中,这个功能将是这样的:

while(42) { 
myfunc(); 
} 

而这个函数返回一个承诺。

你能帮助我吗?

+0

'变种FUNC = X => {的console.log(X);返回新的Promise(r => setTimeout(_ => r(x),1000))},loop = x => func(x).then(loop);循环(41)。然后(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循环:

while(yourFunction()) {}