자바 스크립트 타이머 예제

août 2, 2019 7:16 Publié par

자바 스크립트 타이머 예제 자습서는 오늘의 주요 주제입니다. 자바 스크립트 코드의 실행을 지연하려면 시간 간격 함수를 사용해야합니다. 이러한 시간 간격을 타이밍 이벤트라고 합니다. 자바 스크립트 코드의 블록은 동기적으로 실행됩니다. 그러나 실행을 지연시킬 수있는 일부 JavaScript 네이티브 함수 (타이머)가 있으며 비동기 동작을 만들 수 있습니다. 대답은 타이머 함수가 실행되는 위치에 따라 다릅니다. 이 경우 호출자의 위치에 의존할 수 없습니다. 타이머 구현이 지금 함수를 호출하는 호출기 구현이 되므로 호출자를 제어할 수 없습니다. 노드 REPL에서 테스트하는 경우 호출자로 Timetout 개체를 얻을 수 있습니다: 이러한 메서드는 JavaScript 사양의 일부가 아닙니다. 그러나 대부분의 환경에는 내부 스케줄러가 있으며 이러한 메서드를 제공합니다. 특히 모든 브라우저및 Node.js에서 지원됩니다. 이 게시물에는 카운트다운을 표시하는 타이머가 표시되었으며 특정 기간 마다 색상 /메시지가 변경됩니다. 이 예제에서는 디지털 시계와 같이 초당 한 번씩 « myTimer »라는 함수를 실행합니다.

그러나 약간 더 복잡한 더 정확한 타이머를 원한다면 노드 명령으로 example2.js를 실행하면 2 초 후에 « Node.js rocks »가 인쇄됩니다. 다음 섹션에서는 코드 실행을 지연하는 타이머를 만드는 방법과 JavaScript에서 이러한 함수를 사용하여 하나 이상의 작업을 반복적으로 수행하는 방법을 보여 줄 것입니다. 노드 명령으로 example4.js를 실행하면 노드는 아무 것도 인쇄하지 않으며 프로세스는 종료됩니다. 설정해야 할 첫 번째 인수는 함수 참조일 뿐입니다. example1.js가 가지고 있는 것과 같은 인라인 함수일 필요는 없습니다. 다음은 인라인 함수를 사용하지 않고 동일한 예입니다: 실시간 타이머를 원하는 경우 날짜 개체를 사용해야 합니다. 그건 그렇고, Node.js에서, 0 ms. Node.js 타이머 API와 setTimeout을 할 수있는 또 다른 방법이 있다set.js 타이머 API는 setImmediate라는 또 다른 기능을 가지고 있으며, 기본적으로 0 ms와 setTimeout과 같은 일이지만 우리는 거기에 지연을 지정할 필요가 없습니다 : 2분의 타이머를 설정하고 페이지 경고가 « 시간 증가 »할 때 JavaScript 코드입니다. setTimeout() 메서드는 함수를 호출하거나 지정된 밀리초(trillion) 후에 식을 평가합니다. 두 개의 서로 다른 타이머가 있고 타이머를 사용하여 다시 시작되는 예제는 이벤트가 트리거되거나 페이지가 로드되는 정확한 순간에 완료되지 않도록 코드 실행을 지연시킬 수 있습니다. 예를 들어 타이머를 사용하여 정기적으로 웹 사이트의 광고 배너를 변경하거나 실시간 시계 등을 표시할 수 있습니다. 자바 스크립트에는 setTimeout() 및 setInterval()의 두 가지 타이머 함수가 있습니다.

브라우저에서 기본 타이머 함수는 몇 가지 다른 기능과 개체가 있는 Window 인터페이스의 일부입니다. 이 인터페이스는 모든 요소를 기본 JavaScript 범위에서 전역적으로 사용할 수 있게 합니다. 따라서 브라우저 콘솔에서 직접 setTimeout을 실행할 수 있습니다. 이 ID는 타이머를 비활성화하거나 지우고 코드 실행을 미리 중지하는 데 사용할 수 있습니다. 타이머 지우기는 clearTimeout() 및 clearInterval()의 두 가지 함수를 사용하여 수행할 수 있습니다. 시간을 두 가지 형식으로 표시하는 예제를 아래 예제와 함께 보여 드리겠습니다. 설정된 Timeout 호출은 지연이 전혀 없는 방식으로 다시 예약됩니다. 각 호출은 시간 배열의 이전 호출의 실시간을 기억합니다. 실제 지연은 어떤 모습일까요? 살펴보겠습니다: 다음 예제는 2초마다 메시지를 표시합니다. 5초 후 출력이 중지됩니다: 노드에서 타이머는 브라우저의 Window 인터페이스와 유사하게 작동되는 전역 개체의 일부입니다. 노드에서 타이머의 소스 코드를 볼 수 있습니다. 지연 금액은 이 챌린지의 변수이므로 여기에서setInterval를 사용할 수는 없지만 재귀 호출 내에서 setTimeout을 사용하여 간격 실행을 수동으로 만들 수 있습니다.

Classés dans :Non classé

Cet article a été écrit par NotreSite

Les commentaires sont fermés.