node.js中的node-schedulecallback函数
所以我使用https://npmjs.org/package/node-schedule来安排一些任务,对node.js来说有些新意,我不明白为什么在定义一个函数的时候创build一个函数“in line”它没有正确的计划,它只是立即运行,然后退出。
job = schedule.scheduleJob({}, function (){console.log('one minute')});
作品,但是
function test(){ console.log('one minute') } job = schedule.scheduleJob({}, test);
发生一次并退出。
function(){…..}创build一个指向匿名函数的指针,当计划的超时过期时,该指针将被评估。 由于直接调用不是函数指针,因此会立即进行评估。 本质上,程序正试图评估它,以防函数返回一个它可以存储和访问的指针(return function(){…..})。 您想要的行为可以通过设置callback来模拟
function(){test()}
或者将testing主体改为:
return function(){console.log('one minute')};
您可以使用setInterval和setTimeout方法在浏览器窗口中模拟此行为; 它们是节点调度在内部用于调度任务的内容。