Я работаю над функцией поиска, где пользователь вводит текст в поле, и выполняется вызов API для получения подсказок. Сейчас API вызывается при каждом нажатии клавиши, что неэффективно. Я хочу реализовать debounce, чтобы API вызывался только после того
, как пользователь перестанет вводить текст в течение определенного времени.
Могли бы вы объяснить, как сделать debounce на JavaScript? Вот код, который у меня есть:
const input = document.getElementById("search");
input.addEventListener("input", (e) => {
fetchSuggestions(e.target.value); // This is being called on every keystroke
});
function fetchSuggestions(query) {
console.log("Fetching suggestions for:", query);
// Simulating an API call
}
Как я могу изменить этот код, чтобы добавить debounce для функции fetchSuggestions?