我想在子函数的范围内使用.concat
而不是push,然后在范围链的上方访问它。
我这里有一个简单的函数,可以在通过正则表达式函数运行文件后过滤掉某些文件名和文件类型。以下函数适用于.push数组方法,但如果我尝试使用.concat
它将返回一个空数组fs.readdir('./schema', function(err,files){
var filelist = [];
if(err)
throw err;
else{
var index = files.length;
while(index>0){
filelist.concat(isNOTswapfile(files[index]));
index--;
}
console.log(filelist)
}
}
)
返回一个空数组[]
欢迎并感谢帮助。
答案 0 :(得分:1)
concat
返回一个新的数组。因此,除非您重新分配filelist
变量,否则它将保持[]
while(index>0){
filelist = filelist.concat(isNOTswapfile(files[index]));
index--;
}
console.log(filelist)
应该可以正常工作。
上阅读更多内容