Giả sử tôi có một danh sách khổng lồ (hơn 1000) các đối tượng như thế này:
[{name: 'john dow', age: 38, gender:'m'}, {name: 'jane dow', age: 18, gender:'f'}, ..]
Tôi muốn lọc danh sách này theo tên (ký tự khôn ngoan).
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'}, ..]
Cách hiệu suất cao nhất để làm điều đó là gì? RegEx rõ ràng là một trong những chìa khóa, việc sắp xếp danh sách trước nếu bạn cho rằng người dùng thường có xu hướng đặt tên ngay từ đầu cũng có thể là một ý kiến hay, nhưng nó chỉ hữu ích trong một số trường hợp.
Có bất kỳ hàm tích hợp JavaScript nào để ánh xạ một bộ lọc không? Tôi hy vọng những thứ đó sẽ nhanh hơn việc triển khai JavaScript.
Tái bút: Có Tôi muốn lọc ở phía máy khách vì "khả năng ngoại tuyến" mà tôi muốn cung cấp.