TimerChain
- setTimeout 을 순차적으로 동작하도록 함
- Array.prototype 를 상속 받아서 사용
- defineProperty 로 메소드와 변수들을 선언
- var tc = new TimerChain() 처럼 사용. 클래스화
- tc.push(cb,timout).push(cb,timout).start() 처럼 메소드 체이닝
construct
- var tc = new TimerChain();
methods
- 대부분의 메소드는 Array 에서 상속받음
- .push(function, timeout)
timeout에 맞춰서 동작 할 function 을 뒤에 추가.
- .unshift(function, timeout)
timeout에 맞춰서 동작 할 function 을 맨 앞에 추가.
- .splice(start,deleteCount[,function, timeout [,function, timeout [,function, timeout , ...]]])
start 위치에서 deleteCount 만큼 지우고 timeout에 맞춰서 동작 할 function 을 추가함
- .clear()
추가한 function 들을 삭제. 모든 function 이 삭제되면 TimerChain 동작이 중지됨
- .start()
TimerChain 시작. 순차적인 setTimeout 동작. 중복 동작 안됨
- .run()
TimerChain 시작. 순차적인 setTimeout 동작. 중복 동작 됨. 실행시 다음함수가 즉시 setTimeout 으로 동작함
- .stop()
TimerChain 종료. 다시 .start()하면 남은 function 만큼 동작함.
- .clearTm()
내부 .tm 의 clearTimeout 동작용
properties
- 대부분의 멤버 변수는 Array 에서 상속받음
- .isRunning = false or true
동작 여부
- .tm = null or int
setTimeout의 timeoutID
TimerChain
TimerRepeat