node js app多次调用相同的函数

时间:2017-03-30 08:19:15

标签: javascript node.js

好的,所以我开发了一个全天候运行的应用程序。我只有一个问题,如果我这样写:

    setInterval(getWCProducts  , 1000*intervall); 

    function getWCProducts(){
      //code
    }

    function test(){
        console.log("Hello!")
    }
    test() 

它会一遍又一遍地调用测试。它将打印&#34;你好!&#34;关于每一个问题。为什么应用程序的行为如此?显然&#34;真实&#34;功能不打算打印&#34;你好!&#34;。真正的一个是&#34;设置功能&#34;它在开始循环之前准备应用程序,我不能一遍又一遍地运行设置功能。<​​/ p>

1 个答案:

答案 0 :(得分:1)

在完成设置之前,不要启动循环。

function main() {
     console.log("doing my main thing");
}

function setup() {
    console.log("doing my setup stuff ");
    setInterval(main, 1000);
}

我想指出的是,对于setInterval的大多数实际应用程序,你不希望启动一个Interval的函数调用,你真的想在上一次调用结束后启动每个函数一个Interval。如果是这种情况,修改后的代码将如下所示:

function main() {
     console.log("doing my main thing");
     setTimeout(main, 1000);
}

function setup() {
    console.log("doing my setup stuff ");
    main();
}