250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 리액트 공식문서
- typeScript
- JavaScript
- useState
- 내일배움캠프 최종 프로젝트
- 내일배움캠프 프로젝트
- REACT
- 내배캠 프로젝트
- 리액트
- 자바스크립트
- 파이썬 enumerate
- 코딩테스트
- useEffect
- Next 팀 프로젝트
- 파이썬 slice
- 한글 공부 사이트
- 파이썬 replace
- 파이썬 for in
- 타입스크립트 props
- 내일배움캠프
- 타입스크립트 리액트
- tanstack query
- 리액트 훅
- 리액트 프로젝트
- 파이썬 딕셔너리
- 타입스크립트
- 파이썬 for
- 프로그래머스
- React Hooks
- 파이썬 반복문
Archives
- Today
- Total
sohyeon kim
[JS] setTimeout, setInterval, clearTimeout 본문
728x90
setTimeout : 일정 시간이 지난 후 함수 실행
function fn() {
console.log("hi");
}
setTimeout(fn, 3000);
// 위와 같음
setTimeout(function () {
console.log("hi");
}, 3000);
❗️ 인수가 필요하다면? : 세 번째에 값을 넣는다.
function showName(name) {
console.log(name); // "aoto"
}
setTimeout(showName, 3000, "aoto");
clearTimeout : 예정된 타임아웃을 없앤다.
function showName(name) {
console.log(name);
}
const tId = setTimeout(showName, 3000, "aoto"); // 실행되지 않음
clearTimeout(tId);
setInterval : 일정 시간 간격으로 함수를 반복
function showName(name) {
console.log(name);
}
const tId = setInterval(showName, 3000, "aoto"); // 3초마다 "aoto"가 찍힌다.
// 멈추고싶다면, clearTimeout 사용
❗️ 주의, delay 값을 0으로 줘도 바로 실행되진 않는다.
현재 실행중인 스크립트가 종료된 후,
스케쥴링 함수가 실행되기 때문.
또한 브라우저는 기본적으로 4ms 정도의 대기 시간이 있다.
그러니 0이라 적어도 4ms 혹은 그 이상의 대기 시간이 걸린다.
setTimeout(function () {
console.log("hi");
}, 0);
console.log("bye"); // bye가 먼저 찍힌다.
응용!
let num = 0;
function showTime() {
console.log(`접속하신지 ${num++}초가 지났습니다.`);
if (num > 5) {
clearInterval(tId); // 5초가 지나면 종료되도록
}
}
const tId = setInterval(showTime, 1000); // 1초마다 실행
// "접속하신지 0초가 지났습니다."
// "접속하신지 1초가 지났습니다."
// "접속하신지 2초가 지났습니다."
// "접속하신지 3초가 지났습니다."
// "접속하신지 4초가 지났습니다."
// "접속하신지 5초가 지났습니다."
🔗 https://youtu.be/KfuyXQLFNW4?si=wAJ5A1iEwQVnb72I
728x90
반응형
'JavaScript' 카테고리의 다른 글
[JS] 상속, 프로토타입 Prototype, 인스턴스 instance (0) | 2023.12.14 |
---|---|
[JS] this 지정 call, apply, bind (0) | 2023.12.14 |
[JS] Closure 클로저 (0) | 2023.12.14 |
[JS] 나머지 매개변수, 전개 구문, 단축 속성명 (0) | 2023.12.14 |
[JS] 배열과 객체의 구조 분해 할당 (0) | 2023.12.14 |