gpt4 book ai didi

javascript - someEmptyArray.push(data) 之后数组的索引 0 未定义

转载 作者:行者123 更新时间:2023-12-03 04:39:16 24 4
gpt4 key购买 nike

我正在运行fs.readdir来返回目录中的文件名数组。我正在运行一些正则表达式函数来过滤掉我不想显示的某些文件名和/或文件类型。

通过以下代码,我返回了一个新的过滤数组,但该数组的 0 索引返回未定义。

提前对代码格式表示抱歉,我使用的是手机,无法连接到互联网的计算机。

fs.readdir('./schema', function(err,files){
var filelist = [];
if(err)
throw err;
else{
var index = files.length;
while(index>0){
filelist.push(isNOTswapfile(files[index]));
index--;
}
console.log(filelist)
}
}
)

这将返回 `[undefined, 'file_1.js']为什么会发生这种情况以及如何消除它?

谢谢

最佳答案

files[index] 第一次是未定义,因为数组的长度始终大于最大索引(从零开始的索引)。将 index-- 移动一行,它会起作用,但是您将省略第一个元素,因此与 >=0 或 index-1 进行比较以获取所有元素。

fs.readdir('./schema', function(err, files) {
var filelist = [];
if (err) {
throw err;
} else {
var index = files.length;
while (index >= 0) {
index--;
filelist.push(isNOTswapfile(files[index]));
}
console.log(filelist)
}
})

关于javascript - someEmptyArray.push(data) 之后数组的索引 0 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43150883/

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