私の質問は次のとおりです。コールバックによって返された結果を返したいです。
exports.process_logs = function(file, process_func, process_parsedLog) {
var logs = [];
var log = null;
var counter = 0;
fs.readFile(file, 'utf8', function(read_error, content) {
if (read_error) return sys.error(read_error);
// TODO:: Remove these hardcode rails filters
// switch filters and split functions to a nested helper in process func
content.split(/Processing /).forEach(function(msg, index) {
if ((tmp = process_func(msg, index)))
logs.push(tmp);
});
log = process_parsedLog(logs);
});
console.log(log);
return log;
};
しかし、「log = process_parsedLog(logs);」の直後に console.log(log) で確認すると、変数「log」はまだ null です。正しい結果が得られます。