gpt4 book ai didi

javascript - 在node js中获取空数组

转载 作者:太空宇宙 更新时间:2023-11-04 03:00:49 25 4
gpt4 key购买 nike

我正在读取图像文件夹并想要获取图像名称。但这里的问题是我得到空数组作为响应,而我已经通过控制台检查我应该得到文件名数组。我哪里出错了?

app.get("/getImages",function(req,res){
var folderName = './multiuploads/';
var new_files = [];
fs.readdir(folderName, (err, files) => {
for(var j=0;j<files.length;j++){
console.log(files[j]) // this is giving me name of files
new_files.push(files[j]); // but this is not working
}
});
console.log(new_files); // this is coming blank
res.send(new_files);

})

我正在使用此 api 从文件夹读取图像文件,但问题是 new_files 数组仍然为空,即使文件夹有一些图像。

最佳答案

这是一个异步问题,请尝试将代码放在 for block 之后,但在 readdir 回调内:

app.get("/getImages",function(req,res){
var folderName = './multiuploads/';
var new_files = [];
fs.readdir(folderName, (err, files) => {
for(var j=0;j<files.length;j++){
console.log(files[j])
new_files.push(files[j]);
}
console.log(new_files);
res.send(new_files);
});
})

readdir 回调是异步的,因此您的 console.logres.send 在完成操作之前正在执行。

关于javascript - 在node js中获取空数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57313390/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com