Задать вопрос
@lexstile

Как оптимизировать live search?

Есть массив объектов вида:
[
    {
      code: 'test',
      name: 'Тест',
    }
    // ...........
  ]

Делаю фильтр по нему, пример:
options.filter(({ name }) => name.includes(inputValue));

Ставлю на onChange input.
Но из-за большого объема (около 200 элементов) подтормаживает.
Можно ли как-то такой процесс оптимизировать?
Возможно какие-то функции для поиска подстроки в строке работают быстрее нежели includes?
  • Вопрос задан
  • 72 просмотра
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillbox
    JavaScript
    3 месяца
    Далее
Решения вопроса 2
vovaspace
@vovaspace
Frontend Engineer
Вам нужен debounce. Например, из lodashlodash.com/docs/#debounce.
Ответ написан
Комментировать
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
На клиенте, если всё:
1. Regex
2. "Деревья"
3. Анаграммы
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы