테스트 사이트 - 개발 중인 베타 버전입니다

[javascript] setInterval함수에서 딜레이 시간이 3000과 1000*3의 차이가 뭔가요?? 채택완료

미댜웆대나 8년 전 조회 3,468

일을 하다가 코드에 setInterval(function(){ .... },1000*3); 이렇게 되있더라구요.

그래서 왜 3000으로 안쓰지 싶어서 구글에 찾아봤더니 딱히 저렇게 쓰는 예제를 못찾겠었습니다.

 

그리고 크롬 콘솔로 찍어보니

3000은 3초에 한번 돌아가고

1000*3은 3초에 두번 돌아가더라구요.

 

그냥 1000*3으로 쓰면 3초에 두번 돌아가는 이유가 뭘까요?

혹시 아시는분 계시면 답변 부탁드려요 ㅠㅠ 궁금해 죽겠네요 ㅠ

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
8년 전

서로 같습니다. 두번 돌아가는 것은 잘 못 본 게 아닌가 싶습니다.

 

3000 을 쓰지 않고,

1000 * 3 으로 쓰는 것은,

3초라는 의미의 코드의 가독성을 높이려는 이유 때문일 거에요.

 

가령, 하루를 초로 변환하면 86400 인데,

이를 60 * 60 * 24 로 쓰는 경우도 많이 있습니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

미댜웆대나
8년 전
한참 찾아봤는데 그냥 가독성때문이군요 ㅎㅎ 답변 감사합니다 !

댓글을 작성하려면 로그인이 필요합니다.

8년 전

두번 돌아간게 아니라 아마 새로고침 하는 과정에서 clearInteval 이 안되서 이전 코드가 동작한것으로 보입니다.

화성회사 말씀처럼 가독성을 위한것 말곤 다르면 안되지요 ^^

혹시 또 사이드 이펙트가 있나 해서 찾아봤지만 전혀 그런거 없던데요 ㅋ

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

미댜웆대나
8년 전
답변 감사합니다! 그리고 바쁘신중에 살펴봐주셔서 감사드려요~

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인