如何创建数组全局?在nodejs中

时间:2013-05-17 04:39:06

标签: node.js

我是否需要将每个链接保存在“request({..})”中的数组中,然后在“request({..})”的外部显示或工作,这将是我的代码但是什么都行不通?

var request = require("request");
var cheerio = require("cheerio");
var arrayLinks = [];
request({
    uri: "http://www.some-url.com",
}, function(error, response, body) {
    var $ = cheerio.load(body);
    $("a").each(function() {
    var link = $(this);
    arrayLinks.push(link.attr("href"));
    });
});
arrayLinks.forEach(function(link){console.log(link)});

1 个答案:

答案 0 :(得分:2)

例如:

var request = require("request");
var cheerio = require("cheerio");
var arrayLinks = [];
request({
    uri: "http://www.some-url.com",
}, function(error, response, body) {
    // Some logic.
    linkTheArray()
});

function linkTheArray() {
     arrayLinks.forEach(function(link){console.log(link)});
}

现在您可以在请求完成后运行它。还有另外一种方式,但它非常难看。您可以运行超时功能,直到在数组中获得一些数据