Используете ли вы чистый JavaScript?Если нет, вы можете использовать функцию lodash debounce , она делает именно то, что вам нужно.
EDIT: Как кто-то указал в комментариях, я не должен простоопубликуйте ссылку в качестве ответа, поэтому я предоставлю фрагмент, который поможет улучшить этот ответ
import _ from 'lodash';
$(selector).on('keyup', _.debounce(function (e) {
// stuff
}
}, 500));