【问题标题】:For Loop in CasperJSCasperJS 中的 For 循环
【发布时间】:2013-06-17 00:12:20
【问题描述】:

我在 CasperJS 中运行一个监听器,它访问一些私人网站并等待某些数据配置。目前,这在编号为 For 的循环上运行得很好,但不是最优的,如下所示:

 for (var p = 20000;  p-- > 0;) {

// ... c.900 lines of code ....

}

While 循环和 Do-While 循环不起作用,因为 Casper.then 的多个实例存在范围问题。

我真正想做的是在一天的计时器上 cron 代码,在早上 6 点到午夜之间运行,类似于:

// as global variable

function militarytime () {
                var currentTime = new Date();
                var hours = currentTime.getHours();
                var minutes = currentTime.getMinutes();
                var military = (hours*100)+minutes
                return military;
}

var p = militarytime();

// then within code,

for (t=p; (t=p) && (p>600); t++)

这种特殊的做法(我已经尝试过很多)只是挂在 CasperJS 中。

代码已经在生产环境中运行了几个星期,但效果不佳,在那段时间里我一直在搜索 stackoverflow 和 casperjs/api,但无济于事。有什么建议吗?

提前致谢。

【问题讨论】:

  • 您的意思是在 for 循环的条件内分配给 p 吗?
  • 是的。不可否认,这是一次 hack 的尝试,因为 for 循环中的第一条语句设置了初始条件并且只评估了一次。我试图在每次循环发生时让 p 评估为 [new Date],将循环绑定到当前时间戳。
  • 啊——我明白了。你能提供更多的代码来看看吗?很难说 for 循环是做什么的。

标签: javascript for-loop while-loop phantomjs casperjs


【解决方案1】:

这可能是个愚蠢的问题,但你是在触发 run() 函数吗?我忘记了包括导致我的程序挂起的内容,通常这是我看到它挂起而没有错误的唯一原因。

【讨论】:

    猜你喜欢
    • 2016-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多