0
最近我遇到了一个问题:我如何给全局变量赋值?如何将值赋给node.js中的全局变量?
当我尝试返回一个,我发现这是未定义的,并且我想分配给它的“值”不是未定义的。
我的代码是这样的:
module.exports = function (jsonStr) {
var a;
request(main_url, function(error, response, html) {
if(!error) {
...
request(sub_url, function(error, response, html) {
if(!error) {
...
a = value;
...
}
}
}
}
return a;
});
将“var a”替换为“”。但是,不要使用全局变量;根据需要将东西粘贴到“出口”上。 – dandavis
这是因为'a = value'是异步执行的(在'module.exports'的**函数完成执行后,分配发生**)。你应该做的就是对你的函数进行回调,将'a'作为参数。 (例如'function(jsonStr,callback)') – JCOC611
http://stackoverflow.com/questions/32407269/why-cant-i-see-this-json-in-the-console – Soren