全局变量返回函数

时间:2017-06-17 18:43:20

标签: javascript arrays global

我使用的节点模块从ubuntu读取防火墙ip规则并使用此功能:

function lists(table, chain, cb) {
var ip = [];
// Accepts optional table argument
if(!cb) {
    cb = chain;
    chain = table;
    table = undefined;
}
var rule = {
    list : true,
    chain : chain,
            table : table,
    action : '-L',
    sudo : true
};

lazy(iptables(rule).stdout)
    .lines
    .map(String)
    .skip(2)
    .map(function (line) {
        // packets, bytes, target, pro, opt, in, out, src, dst, opts
        var fields = line.trim().split(/\s+/, 9);

        ip.push(fields[7]);
        console.log(ip);

    })
    return ip;
}

问题是console.log(ip)获取正确的ip值并返回ip获取未定义的变量值...所以如何在返回(ip)中返回ip数组,所以当我从主程序调用此函数时我可以比较如果在数组中的IP ...我在函数的开始定义全局数组变量(var ip = [];)但返回ip获取未定义的变量....我怎么能返回全局IP数组变量的回报(ip )?

0 个答案:

没有答案