프론트엔드
보통
코딩
Debounce 함수 구현
검색 입력에 사용할 debounce 함수를 직접 구현하세요
30분
100점
#3629
문제 설명
debounce 함수를 구현하세요. debounce는 함수가 호출된 후 일정 시간이 지나야 실제로 실행되며, 그 사이에 다시 호출되면 타이머가 리셋됩니다.
함수 시그니처
function debounce(func, delay) {
// 구현
}
사용 예시
const debouncedSearch = debounce((query) => {
console.log("Searching:", query);
}, 300);
// 빠르게 연속 호출
debouncedSearch("a");
debouncedSearch("ab");
debouncedSearch("abc");
// 300ms 후 "Searching: abc" 한 번만 출력
요구사항
- 마지막 호출 후 delay ms가 지나야 함수 실행
- delay 내에 다시 호출되면 타이머 리셋
- 원본 함수에 전달된 인자를 그대로 전달
- this 컨텍스트 유지
힌트
힌트를 활용하세요
실행 버튼을 눌러 코드를 실행하세요.