我试图在调用final()时返回arr ....
function final(){
var arr;
fs.readFile("/my/path/", 'utf8' ,(err, data) => {
arr = parsing(data);
arr.splice(-1,1);
});
return arr;
}
它不断返回undefined。即使readFile括号内的arr给我一个数组......
可能的副本讨论了打印,而我需要一个值来在其他地方使用。 如何在另一个函数/模块中使用值arr?
答案 0 :(得分:0)
function final(){
var arr;
fs.readFile("/my/path/", 'utf8' ,(err, data) => {
arr = parsing(data);
arr.splice(-1,1);
return arr;
});
}
是您需要执行的异步功能
doc.css('span[class^="classname-"]').each{|el| el.delete 'class'}
答案 1 :(得分:0)
或将回调函数传递给最终函数
function callback(arr) {
//do something with arr
}
function final(callback) {
var arr;
fs.readFile("/my/path/", 'utf8' ,(err, data) => {
arr = parsing(data);
arr.splice(-1,1);
callback(arr);
});
}
由于@Farhan Yassen的答案因异步性质而无法获得正确的行为。
此外,您始终可以将readFile
的同步版本与readFileSync