我创建了一个应该返回已解析的JSON文件的函数,但是我在将值传递给变量时遇到了麻烦。
var getData = function(){
var parsedData = {};
var req = http.request(options, function (res){
var resBody = '';
res.setEncoding('utf8');
res.on('data', function (chunk) {
resBody += chunk;
});
res.on('end', function(){
parsedData = JSON.parse(resBody);
})
});
req.end();
console.log(parsedData.responseHeader); /* quick test to prove it’s working */
return parsedData;
}
module.exports = getData;
parsedData
在http.request
函数范围之外声明,但我无法为其设置值。我可以在console.log(parsedData.responseHeader)
范围内http.request
时打印该值,但我无法获得该范围之外的值。