오랫동안 웹 플랫폼은 JavaScript 프로그래머에게 특정 시간 간격이 경과한 후 비동기적으로 코드를 실행하고 사용자가 중지하라고 지시할 때까지 비동기적으로 코드 블록을 반복적으로 실행할 수 있는 여러 기능을 제공했습니다.
setTimeout()
=> 이럴 때 가장 많이 사용하는 코드
clearTimeout()
setTimeout()일정 시간 후에 코드를 한 번 실행해야 할 때 완벽하게 작동합니다. 하지만 애니메이션의 경우와 같이 코드를 계속해서 실행해야 하는 경우에는 어떻게 될까요?
이것이 setInterval()들어오는 곳 입니다.
=> setInterval 어디서 보긴 했는데!
function displayTime() {
let date = new Date();
let time = date.toLocaleTimeString();
document.getElementById('demo').textContent = time;
}
const createClock = setInterval(displayTime, 1000);
=> 아 이렇게 setInterval을 쓰는구나
=> 애니메이션 작동을 하면서 썼던거 같음 익숙띠
사용하는 또 다른 방법이 있습니다 setTimeout(). 를 사용하는 대신 재귀적으로 호출하여 동일한 코드를 반복적으로 실행할 수 있습니다 setInterval().
let i = 1;
setTimeout(function run() {
console.log(i);
i++;
setTimeout(run, 100);
}, 100);
=> 어제 dp1 문제에서도 뭔가 재귀 때무에 문제였는데
=> 재귀가 문제네