Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Node.Js中的变量值不一致_Javascript_Node.js_Express_Asynchronous - Fatal编程技术网

Javascript Node.Js中的变量值不一致

Javascript Node.Js中的变量值不一致,javascript,node.js,express,asynchronous,Javascript,Node.js,Express,Asynchronous,更新:简化了示例代码 我找了这个问题,但什么也没找到。我有一个函数,它是simplecrawler的包装器。以下是简化代码: const Crawler = require('simplecrawler'); //Initial data is an object with initial.url set to url for crawling const startCrawler = function startCrawler() { const crawler =

更新:简化了示例代码

我找了这个问题,但什么也没找到。我有一个函数,它是
simplecrawler
的包装器。以下是简化代码:

const Crawler = require('simplecrawler');

//Initial data is an object with initial.url set to url for crawling     

const startCrawler = function startCrawler() {
      const crawler = new Crawler('http://example.com');
          crawler.start();

    const randomVariable = "set";
  const downloadCondition = crawler.addDownloadCondition((queueItem) => {
      console.log(randomVariable);
  });
};
控制台:

set 
set 
set 
set 
set 
set 
undefined 
set 
set 
undefined 
undefined 
set
问题是在
downloadCondition
中,常量
randomVariable
的值对于上面所示的一些调用是未定义的。爬虫程序实例每秒调用
downloadcontion
。对此有什么解释吗?

这是个打字错误。爬行启动程序(初始数据)不是爬行启动程序(初始数据)


由于打字错误,每次迭代都必须打印未定义的内容,您不知道这一点,因为在未定义内容时您没有打印。

您能提供一个吗?Hi@qxz,这是一个最小的完整示例。包装器函数所做的只是需要simplecrawler,它作为npm包提供,然后在函数中使用它。我还介绍了如何简单地从另一个页面调用它感谢Hadas,它只是在示例中,我从主代码重新创建了上面的代码。在原始文件中,我有正确的名称和“initialData”,但不是在每个itereation中都未定义,它只是在某些迭代中未定义?我导出了这个函数,如果你正在讨论的话,可以进一步简化它