在JavaScript中,过滤JSON对象列表的最高性能方式是什么?
- 论坛
- 在JavaScript中,过滤JSON对象列表的最高性能方式是什么?
12 浏览
在JavaScript中,过滤JSON对象列表的最高性能方式是什么?
假设我有一个庞大的(1000+)对象列表,类似如下:
[{name: 'john dow', age: 38, gender:'m'}, {name: 'jane dow', age: 18, gender:'f'}, ..]
我想通过名称(逐个字符)对此列表进行过滤。
filter('j') => [{name: 'john dow', age: 38, gender:'m'}, {name: 'jane dow', age: 18, gender:'f'}, ..] filter('jo') => [{name: 'john dow', age: 38, gender:'m'}, ..] filter('dow') => [{name: 'john dow', age: 38, gender:'m'}, {name: 'jane dow', age: 18, gender:'f'}, ..]
有什么最高效的方法可以做到这一点?显然,正则表达式是其中之一,如果您假设用户通常倾向于从开头开始输入名称,则预先对列表进行排序也是一个好主意,但这只在某些情况下有帮助。
是否有任何JavaScript内置的映射过滤器函数?我希望它们比JavaScript的实现更快。
附言:是的,我想在客户端进行过滤,因为我想提供“离线功能”。