2012-07-07 3 views
0

"시작"을 클릭 할 때마다 ticking을 시작하는 5 가지 자바 스크립트 타이머가 있다고 가정합니다. 각 변수는 timer1, timer2, timer3, timer4, timer5 변수에서 참조됩니다. 이 타이머는 배열의 각을한다면자바 스크립트에서 동시에 여러 객체에 여러 함수를 실행하는 방법은 무엇입니까?

, 나는 의사에 이런 식으로 뭔가를해야 할 것 :

foreach timer in timerarray { 
    timer.stop; 
    timer.setstoptime(time that it stopped); 
} 

여기서 문제는 그 나는 인해 반복하는 데, "getstoptime"을 얻을 수 있다면 각 타이머의 배열을 통해 모든 타이머는 정지 한 시간에 대해 다른 값을 갖게됩니다. 모든 타이머를 추적 할 수있는 방법이 있습니까? 정지 버튼을 클릭 할 때 정지 시간을 검색 할 수 있다면 모두 동일한 것입니다.

나는 이것이 배열을 매우 빠르게 반복하면서 javascript로 발생하지는 않을 것이라는 것을 알고 있지만 배열을 반복해야하기 때문에 각 타이머가 멈추기 전에 작은 시간 간격이 있습니다.

나는 모두가 "stop"을 동시에 수행 할 수있는 방법을 찾고 있습니다. 어떤 사람이 샘플 코드를 제공 할 수있는 경우 몇 가지 권장 사항이 발생하는 것을 보장하는 방법은 훌륭합니다.

답변

0

JS 사용 여부에 관계없이 요청하는 것을 수행 할 방법이 없습니다. 스레드를 사용할 수 있었다면 모든 타이머가 같은 순간에 멈출 것이라고 여전히 보장 할 수 없습니다.

모두가 같은 정지 시간을 갖기를 원하면 루프가 시작되기 전에 해당 값을 가져 오지 말고 모든 타이머에서 명시 적으로 해당 값을 설정하십시오.

+0

사용자가 멈출 때를 알 수 없으므로 루프 전에 값을 알 수 없습니다. 만약 내가 당신을 올바르게 읽지 못했다면 당신이 의미하는 바가 아니라면 당신이 예제를 제공 할 수 있다면, 좋을 것입니다. 이 순간에 접근하는 가장 좋은 방법을 원할 수 있습니다. 즉각적인 결과를 보장 할 수는 없지만 가능한 한 가까이 있기를 원합니다. – Rolando

+0

타이머는 각각 사용자 작업에 의해 독립적으로 중지 되었습니까? 아니면 사용자가 중지를 누르는 동시에 모두 중지됩니까? – jjathman

+0

사용자가 멈 추면 모두 "동시에"멈춰야합니다. – Rolando

관련 문제