Есть код, который при вводе в input прерывает вызов функции callSearch, если после последнего ввода символа не прошло 2х секунд, помогите разобраться с данными строчками:
let logger = (args) => callSearch(args);
и debounce эта функция, и можно ли упростить данный пример?
var lastCall = false; var lastCallTimer;
$('.target').keyup(function(){
var Value = $('input').val();
let logger = (args) => callSearch(args);
let debouncedLogger = debounce(logger, 2000);
debouncedLogger(Value);
});
function debounce(f, t) {
return function(args) {
let previousCall = lastCall;
lastCall = Date.now();
if (previousCall && ((lastCall - previousCall) <= t)) {
clearTimeout(lastCallTimer);
}
lastCallTimer = setTimeout(() => f(args), t);
}
}
function callSearch(args)
{
console.log(args);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="" name="" class='target'>
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Необходимо, что бы при клике на ссылку вырисовывалась линия, попытался менять ширину линии с помощью JS, предварительно установив элементу...
У меня есть буфер входящих аудио фреймов в wasm модуль
Хотите улучшить этот вопрос? Переформулируйте вопрос так, чтобы он был сосредоточен только на одной проблеме