Javascript 忽略所有文件而不是一个文件

标签 javascript

我试图让我的 JavaScript 忽略包含一堆 Photoshop 图像的文件夹中保存的一个文件类型扩展名。对于文件夹中的所有其他文件类型,我都有它,以便这些文件类型填充一个窗口,并且用户可以导入到他们的工作空间中。

我已修改脚本以忽略我想要忽略的文件扩展名,但它不再使用文件夹中包含的所有其他文件类型填充窗口。但是,当我从文件夹中取出我想要忽略的文件时,窗口会按应有的方式填充。

这是我目前检查文件夹中文件类型的方法:

//Prompt for folder location
var Path = Folder.selectDialog("Select Folder Location for Renders")
// Use the path to the application and append the samples folder 
var samplesFolder = Folder(Path)
//Get the files 
var fileList = samplesFolder.getFiles()
//Creat Array to hold names
var renderTypes = new Array();
//Parse Initial name to get similar render elements
var beautyRender = fileList[0].name
beautyRender = beautyRender.substr(0, beautyRender.length-4)


//Get the render elements with a similar name
for (var i = 0; i < fileList.length; i++)
{
  var filename = fileList[i].name;
   if (filename.match(/\.(stitchinfo)$/i) == null) 
   {
      if(fileList[i].name.substring(0,beautyRender.length) === beautyRender)
      {
        renderTypes.push(fileList[i].name); 
      }
   }
 } 

任何人都可以看到我做错了什么并需要修改吗?

更新 我仍在尝试使其正常工作,并按照下面其中一张海报的帮助,我已将代码修改为以下内容:

for (var i = 0; i < fileList.length; i++)
{
  var filename = fileList[i].name;
   if (filename.match(/\.(stitchinfo)$/i) == null) 
   {
        renderTypes.push(fileList[i].name); 
   }
}

但是,这个新代码带来了一个新问题,因为它返回文件夹中包含的每个文件并显示它。

我仍然对如何让它按我想要的方式工作感到困惑。请问有人可以帮助我吗?

最佳答案

您正在创建一个稀疏数组,因为当您忽略 fileList 中的文件名时,您会跳过 renderTypes 中的元素。这可能会让您的渲染代码感到困惑。更改为:

renderTypes.push(fileList[i].name);

关于Javascript 忽略所有文件而不是一个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19660376/

相关文章:

javascript - 确定正在使用哪个浏览器访问我的网站

javascript - 导致不需要的递归行为的 JavaScript 函数错误

javascript - 是否存在 self.location != document.location 的情况?

javascript - Express 上 Jade 模板继承与外部模块的好策略

javascript - jQuery 源代码中的 returnTrue 和 returnFalse 函数

javascript - 从 for 循环中的函数回调返回值

javascript - 在 TrustPilot 小部件中自定义 JS/CSS

javascript - AJAX 内的 AJAX 无法正常工作

javascript - IOS 键盘显示按钮的 onClick 事件

javascript - JSON 字符串转 JS 数组