考虑到以下代码块,如何让loadConfig()返回JSON配置对象?Javascript嵌套函数返回
function loadConfig(){
fs.readFile('./config.json', 'utf8', function (err, data){
if (err) throw err;
var config = JSON.parse(data);
});
return config;
};
返回的配置是不确定的变量配置是loadConfig()函数的范围之内,但如果return语句位于READFILE匿名函数里面,它不通过对loadConfig下降( ),看起来只会打破嵌套的匿名函数。
另一个尝试通过将匿名函数保存在主函数loadConfig返回的变量中来解决此问题,但无济于事。
function loadConfig(){
var config = fs.readFile('./config.json', 'utf8', function (err, data){
if (err) throw err;
var config = JSON.parse(data);
return config;
});
return config;
};
问题立场;在上面给出的情况下,如何使loadConfig()返回配置JSON对象?
'readFile'是异步的 - 所以你永远不能从该函数中'返回'。 – tymeJV
阅读关于承诺 – Roljhon
承诺是你的朋友! –