서버 자원을 최대한 적게 사용하며 알람을 업데이트시킬 수 있는 스크립트를 구현하라는 업무를 요청받았다.
알람은 실시간으로 업데이트되지 않아도 된다고 하여 일정한 시간 간격에 따라 업데이트된 내용을 가져오는 방식을 구현해 보았다.
로직 흐름
- 함수가 실행되면 현재 시간을 sessionStorage에 저장
- 저장된 시간과 현재 시간의 밀리초 차이가 600000 (10분) 이상일 시 알람 업데이트
- 알람 업데이트 시간을 sessionStorage에 갱신
function FnTimeCheck() {
//현재시간
var nowDate = new Date();
//세션스토리지에 저장된 시간
var saveDate = new Date(sessionStorage.getItem("saveDate"));
if (nowDate.getTime() - saveDate.getTime() > 600000) {
//저장된 시간으로부터 10분이 지났는지 체크
console.log("알람 업댓!");
//업데이트 시간 세션스토리지에 갱신
sessionStorage.setItem("saveDate", new Date());
}
}
FnTimeCheck();
//10초마다 로직 실행하며 시간 체크
setInterval(FnTimeCheck, 10000);
매우 간단하게 구현할 수 있다!
공부내용을 기록하는 블로그입니다.
피드백은 언제든지 환영합니다😊
'Cod-ing > JavaScript' 카테고리의 다른 글
[JavaScript] PDF다운로드 기능 구현하기 (html2pdf) 오류 해결! (0) | 2023.09.21 |
---|---|
[JavaScript] PDF다운로드 기능 구현하기 ( html2pdf ) (0) | 2023.09.18 |
[JavaScript] 전개구문(Spread syntax)이란? (0) | 2023.09.17 |
[JavaScript] 구조분해할당이란? (0) | 2023.08.27 |
[JavaScript] data- 속성을 이용한 그래프 바 만들기 (0) | 2022.04.20 |