Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- VPC
- 리버스 프록시
- Google Cloud Platform
- AWS Certificate
- AWS Solution Architect
- AWS
- container
- ansible
- Cloud Bigtable
- Cloud SQL
- Solution Architect Certificate
- kubernetes
- Google Cloud Platorm
- Solution Architect
- Amazon Web Service
- playbook
- Kubernetes Engine
- 앤서블
- AWS Database
- AWS 자격증
- 아마존웹서비스
- Cloud Datastore
- Compute Engine
- Cloud Storage
- GKE
- Google Cloud
- Cloud Spanner
- Reverse Proxy
- Google Cloud Platrofm
- gcp
Archives
- Today
- Total
sungwony
[javascript] 특정 시간에 함수 호출하기 본문
프로젝트 중, 특정 시간에 서버와 통신에서 표출을 갱신해줘야 할 필요가 있었습니다.
특정 시간에 화면을 갱신해줘야 하는 경우에는 어떤 함수를 활용해야 할까요?
정확하게 시간을 인자로 받아 실행시켜주는 함수는 없습니다.
하지만 활용할 수 있는 함수로 setTimeout() 이라는 함수가 있습니다.
setTimeout은 콜백함수와 시간값(밀리세컨)을 인자로 받아서 해당 시간만큼 뒤에 콜백함수를 호출해주는 함수입니다. 조금더 정확한 함수 사용법은 API를 참조하시면 될 것 같습니다. (https://developer.mozilla.org/ko/docs/Web/API/WindowTimers/setTimeout)
setTimeout(function(){alert("Hello");}, 5000);
첫번째 인자의 함수를 우리가 원하는 특정 시간에 호출 하기 위해서는 특정 시간과 현재 시간간의 차이를 밀리세컨으로 변환시켜 두번째 인자로 넘겨주어야 합니다. 이것 저것 설명하려니 글이 길어지네요.. 각설하고.. 하단의 함수를 참조하세요.
$(document).ready(function(){
timerFunc(function(){alert("Hello")} ,20170331100000) //인자로 넘겨주는 dateTime은 'yyyyMMddhhmiss"의 기본형
});
function timerFunc(func, dateTime){
var year = Number(dateTime.substring(0,4));
var month = Number(dateTime.substring(4,6));
var day = Number(dateTime.substring(6,8));
var time = Number(dateTime.substring(8,10));
var minute = Number(dateTime.substring(10,12));
var second = Number(dateTime.substring(12,14));
var oprDate = new Date(year, month-1, day, time, minute, second); //동작을 원하는 시간의 Date 객체를 생성합니다.
var nowDate = new Date();
var timer = oprDate.getTime() - nowDate.getTime(); //동작시간의 밀리세컨과 현재시간의 밀리세컨의 차이를 계산합니다.
if(timer < 0){ //타이머가 0보다 작으면 함수를 종료합니다.
return;
}else{
setTimeout(func, timer);
}
}
'language > javascript' 카테고리의 다른 글
[javascript] 클로저(closure)의 활용(1) - 특정 함수에 사용자가 정의한 객체의 메서드 연결하기 (2) | 2017.05.22 |
---|---|
[javascript] 클로저(closure) (0) | 2017.05.19 |
[javascript] 프로토타입 (0) | 2017.05.18 |
[javascript] 객체를 깔끔하게 선언하기. (0) | 2017.04.05 |
[javascript] 자바스크립트 객체와 노드 객체를 맵핑하여 관리하기. (0) | 2017.03.30 |