Javascript 从列表中删除/忽略某个项目
我使用以下代码从文件夹中获取文件名:Javascript 从列表中删除/忽略某个项目,javascript,node.js,electron,Javascript,Node.js,Electron,我使用以下代码从文件夹中获取文件名: getFilenameList = () => { let select = document.getElementById("filenameSelect"); let options = []; fs.readdirSync(folderUrl).forEach(file => { options.push(file) }) for (let i = 0; i < options.length;
getFilenameList = () => {
let select = document.getElementById("filenameSelect");
let options = [];
fs.readdirSync(folderUrl).forEach(file => { options.push(file) })
for (let i = 0; i < options.length; i++) {
let opt = options[i];
let el = document.createElement("option");
el.textContent = opt.replace(/\.[^/.]+$/, "");
el.value = opt;
console.log(opt);
select.appendChild(el);
}
}
问题是它也会拾取不需要的文件,如:.DS\u存储
如何修复此问题?您的函数将返回文件夹中的所有文件,包括隐藏的.DS\u存储文件。您可以选择仅忽略该文件
fs.readdirSync(folderUrl).forEach(file => { if(file != ".DS_Store"){options.push(file)}})
以开头的所有文件。(通常是隐藏文件)
忽略所有没有特定扩展名的文件
fs.readdirSync(folderUrl).forEach(file => { if(file.includes(".html") || file.includes(".js") || file.includes(".txt")){options.push(file)}})
定义不需要的文件。任何以
开头的文件?只需过滤结果,转到此处:
fs.readdirSync(folderUrl).forEach(file => { if(file[0] != "."){options.push(file)}})
fs.readdirSync(folderUrl).forEach(file => { if(file.includes(".html") || file.includes(".js") || file.includes(".txt")){options.push(file)}})