Javascript
setInterval() 함수에 관해 질문드립니다.

그림을 첨부했습니다.

한가지 실험을 해봤습니다.

즉, 그림에서 왼쪽의 코딩순서번호 50번째 줄과 66번째 줄을 빼봤습니다.

그런 후 버튼을 1번째 누르면 작동을 합니다.

그리고 멈춤을 1번째 누르면 멈춥니다.

다시 시작을 누르면 작동하는데,

무심코 두번째로 또 눌러보니,,더 빨라집니다.

이때, 멈춤버튼을 한번 누르니,,이전 속도로 돌아옵니다.

그래서, 이젠 멈추게 하려고 또 멈춤을 누르니,,,멈추지가 않습니다.

다시, 페이지를 리프레쉬해서

시작버튼을 누르니,,물론 움직이는데,

또 시작버튼을 마구 계속 누르니,,

누를수록 ​물고기가 좌우로 더 빠르게, 컴사양이 받쳐주는 한계까지마냥 빠르게 움직입니다.​

if(timer==0){...} <<= 이것을 빼니까 저렇습니다.

if(timer==0){...} 으로 둘러싸면 시작버튼을 막 눌러도 속도가 올라가지 않고,

원래대로 움직입니다.

왜, if(timer==0){..} 을 뺀 후 시작버튼을 누르면 누를수록 물고기가 빨라지는 건지,,

궁금합니다. =..-;;;

​if(timer==0){..} <<= 이것이 있고 없고가 어떤 차이를 발생시키는지 궁금합니다. -..=;;;;;


예제 코드 실행 주소입니다.

https://jsfiddle.net/k90sabc7/1/

댓글 3