suyeoniii
수바리의 코딩일기
suyeoniii
전체 방문자
오늘
어제
  • 분류 전체보기 N
    • 🪓 삽질일기
    • 🔙 Backend
      • 🟢 Node.js
      • 🐈‍⬛ NestJS
      • 🌿 Springboot
      • 🗄️ Database
    • 🌸 Frontend
      • 🌐 React.js
      • 💚 Vue.js
      • 🤖 Android
    • 🕹️ 알고리즘
      • 💯 코딩테스트
    • 🔠 프로그래밍 언어
      • 💛 Javascript
      • 💙 Typescript
    • 🚀 배포
    • 🐱 Git
    • etc.
      • 개발환경
      • 오픈 API
      • 개념정리
      • 커뮤니티
    • AI
      • 생성형 AI
    • 회고 N

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • nodejs
  • java
  • 회고
  • MySQL
  • AWS
  • MAC
  • html
  • C++
  • node
  • springboot
  • vue
  • android
  • javascript
  • 백준
  • Spring Boot
  • node.js
  • 알고리즘
  • ec2
  • ubuntu
  • Git

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
suyeoniii

수바리의 코딩일기

[Javascript] setInterval 바로 실행하기
🔠 프로그래밍 언어/💛 Javascript

[Javascript] setInterval 바로 실행하기

2022. 3. 23. 22:15
반응형

setInterval 함수는 인자로 받은 함수를 특정시간마다 실행시키는 함수이다.

즉시 실행되지 않고 먼저 기다린 뒤 특정 시간 간격으로 실행된다.

 

setInterval(console.log("hello world"), 10000); // 1000 = 1초

// 10초 뒤 hello world 출력
// 20초 뒤 hello world 출력
// 30초 뒤 hello world 출력
// ...

 

하지만, 먼저 실행을 시키고 일정간격으로 동작시키고 싶을 때가 있다!

그럴땐 아래처럼 코드를 두 줄로 써도 가능하지만, 실행하는 함수가 중복이 된다.

아래 코드의 경우 console.log("hello world")가 중복이다.

console.log("hello world")
setInterval(console.log("hello world"), 10000);

// hello world 출력
// 10초 뒤 hello world 출력
// 20초 뒤 hello world 출력
// 30초 뒤 hello world 출력
// ...

 

해결방법

// util.js
export const startInterval = (seconds, callback) => {
  callback();
  return setInterval(callback, seconds * 1000);
};
// index.js
startInterval(10, function () {
  console.log("hello world");
});

startInterval이라는 함수를 만들어서 초와 콜백함수를 받도록 하고, 내부에서는 전달받은 콜백을 수행 후, setInterval을 수행해준다.

startInterval 함수에 초와 실행시킬 함수를 넣어준다!

 

참고: https://itmining.tistory.com/70

반응형
저작자표시 (새창열림)

'🔠 프로그래밍 언어 > 💛 Javascript' 카테고리의 다른 글

[Javascript] const 변수 push(), pop()  (0) 2022.04.20
    '🔠 프로그래밍 언어/💛 Javascript' 카테고리의 다른 글
    • [Javascript] const 변수 push(), pop()
    suyeoniii
    suyeoniii
    개발관련 문제 해결, 공부한 내용 등을 업로드합니다.

    티스토리툴바