Throttle, Debounce

최영진·2023년 2월 1일
0

Throttle, Debounce

과한 이벤트 동작을 방지하는 것.

이벤트 발생으로 함수가 실행되었을 때 짧은시간 과도하게 반복된 이벤트가 발생한다면 함수가 실행되는 시간동안 delay가 발생하고 개발자의 의도대로 실행되지 않을 수 있다.

Debounce

함수가 실행된 후 delay를 주어 그 시간동안 이벤트가 발생한다면 전에 실행된 이벤트는 무시되고 새로운 이벤트가 계속 발생되면서,
delay 중 발생된 이벤트 중 가장 마지막에 발생된 이벤트의 결과만 나오는 것

Throttle

함수가 실행된 후, 함수의 delay가 끝난 후 그 사이 delay 동안만 강제로 동작하지 못하게 막는 것

ex) 스크롤 이벤트의 발생

스크롤이 되는 도중 count의 값이 증가한다고 가정.

Debounce

스크롤을 쭉 내리다 멈췄을 때(손을 뗏다가 다시 내릴 때), count가 1씩 증가.

Throttle

delay 가 1000ms로 지정되어 있을 때, 스크롤이 내려질 때 1000ms 마다 1씩 증가

profile
안녕하시오.

0개의 댓글