2017-03-02 73 views
0

我正在解析一些HTML以获取数据列表,对于列表中的每个项目,我正在调度一系列Cron作业。每组作业都被添加到一个数组中以跟踪它们。 下面的代码片段显示了一个for循环遍历网页中的数据列表,并为每个迭代创建一个Cron作业。变量i在创建每个作业时传递给匿名函数,但尝试打印this.i的结果未定义。通过绑定传递给Cron作业的变量导致未定义

有什么,我在这里失踪,或有人可以建议一种方法来解决这个问题吗?

var CronJob = require('cron').CronJob; 
 

 
for(var i = 0; i < dataList.length; i++) { 
 
    new CronJob('*/20 * * * * * ', function() { 
 
    console.log(this.i) 
 
    }.bind({ i: this.i }), null, true, 'Europe/Dublin'); 
 
}

回答

0

解决了我的问题有:

var CronJob = require('cron').CronJob; 

for(var i = 0; i < 5; i++) { 
    new CronJob('* * * * * * ', function(x) { 
    console.log(x) 
    }.bind(null, i), null, true, 'Europe/Dublin'); 
} 
相关问题