如何更快地匹配此文本?

use*_*495 6 javascript algorithm optimization performance node.js

我正在为名字建立一个autosuggest.当用户键入文本框时,它会命中服务器并运行:

var names = [ list of 1000 names ]; //I have a list of 1000 names, this is static.
var query = 'alex';
var matched_names = [];

//This is when it gets slow....
names.forEach(function(name){
    if(name.indexOf(query) >= 0){
        matched_names.push(name);
    }
});

return matched_names;
Run Code Online (Sandbox Code Playgroud)

我怎样才能让它更快?我正在使用Node.js

And*_*are 7

如果名称是静态的,则将此代码移动到客户端并在那里运行.在服务器上运行这样的代码的唯一原因是数据源在某种程度上是动态的.

执行此逻辑客户端将显着提高性能.