[英]javascript/node.js callback data from function inside a function
我不确定如何从函数内部的函数中获取数据回调/返回。
我想将来自processData函数的处理后的数据作为回调传递,并返回此bufferData用作输入其他函数。 目前,bufferData无法从processData函数返回,因为它是从遍历函数中调用的。 代码如下:
function processData(obj, key, value){
var newobj=obj[key][0];
obj[key].push(newobj);
fs.readFile(__dirname + '/' + inFile, 'utf8', function(err, res) {
if (err) return console.log(err);
var data = JSON.parse(res);
data.key=obj;
bufferData=JSON.stringify(data);
**callback(bufferData);** (not sure how to code it to return this bufferData)
}); }
function traverse(obj, func) {
for (var key in obj) {
func(obj, key, obj[key]);
if (obj[key] !== null && typeof(obj[key])=="object") {
traverse(obj[key], func);
}
} }
traverse(data, processData);
从回调返回任何数据确实没有任何意义。
您可以只向processData
添加一个回调函数,然后在readFile
回调中调用它。
否则,您可以使用fs.readFileSync
, fs.readFileSync
可以同步获取文件数据。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.