【发布时间】:2017-08-03 17:52:18
【问题描述】:
我正在尝试创建一个搜索功能,它应该能够在给定各种搜索参数的情况下找到多种文件类型。
例如,我想为我的应用程序提供以下过滤器数组 ['.ini', '.exe', 'dsak_'] 并将找到的每个文件与该数组进行比较以确定文件名是否包含这些字符串之一
目前我正在使用以下代码
for(var i = 0; i < filter.length; i++){
if(file.includes(filter[i])) results.push(file);
}
但我希望看看是否有更好的方法来实现这一点?
【问题讨论】:
-
使用正则表达式会很容易。
-
array.join("|") 然后执行正则表达式 .match,但性能保持不变。 stackoverflow.com/questions/45372093/…
-
性能差异测试了吗?我假设使用正则表达式在更大的周期中会有一点优势。
-
@user1893706 指的是提供的 sn-p rajesh (我的回答中包含了我)
-
以什么方式更好?完成速度?更少的内存使用?这里有太多可能的正确答案。
标签: javascript arrays node.js substring