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
- 부트캠프
- DIGITALHANARO
- 유데미
- Next.js
- s3
- `
- 프로젝트캠프
- 스나이퍼팩토리
- 웅진씽크빅
- 맥북백틱입력
- 맥북백틱
- 하나은행
- 깃허브 레포지토리와 로컬 코드 연결하기
- 개발자교육과정
- github
- 디지털하나로입학식
- 디지털취업
- 프론트엔드배포
- 미래내일일경험
- 네이버로그인창만들기
- udemy
- kdt
- 디지털하나로
- 백틱
- 취준생
- 배포
- 프론트엔드개발자양성과정
- 디지털교육
- 버전생성프로세스
Archives
- Today
- Total
Land of Joe
[JavaScript] 시계 만들기(setInterval, Date, padStart) 본문
<!-- html -->
<h2 id="clock">00:00:00</h2>
// javascript
const clock = document.querySelector('h2#clock');
setInterval, setTimeout 활용해서 시계 만들기를 해보자
그전에 js에 있는 date 객체를 활용해 현재 시각을 가져올 수 있다
const today = new Date();
console.log(today.getFullYear()); //2023
console.log(today.getMonth()); //05
console.log(today.getDate()); //08
console.log(today.getDay()); //0:일~6:토
console.log(today.getHours());
console.log(today.getMinutes());
console.log(today.getSeconds());
매 초마다 시각을 가져올 수 있도록 하기 위해 setInterval를 활용해야함을 알 수 있다!
function getClock(){
const date = new Date( );
console.log(`${date.getHours()}:${date.getMinutes()}:${date.getSeconds()}`)
}
setInterval(getClock, 1000);
매 초마다 새로운 Date object를 만들고 있는 것이다
but, website를 새로고침하면 1초 후에야 다시 실행됨을 알 수 있다
website가 load되자마자 getClock()을 실행하고 싶다면?
function getClock(){
const date = new Date( );
console.log(`${date.getHours()}:${date.getMinutes()}:${date.getSeconds()}`)
}
getClock(); //여기!
setInterval(getClock, 1000);
당장 함수를 실행하고 시간 간격으로 다시 setInterval 되게 하면 된다
(+추가)
new Date().get()을 통해 생성되는 시각의 모습은 한 자리 숫자일 때 '05'가 아닌 '5'로 나타난다
이를 두 자리로 바꾸고 싶다면?
string을 두 문자로 채우고 싶다
= string이 언제나 최소한 두 문자를 갖도록 하고 싶다
padStart, padEnd
'hello'.padStart(7,'x');
// xxhello
'hello'.padEnd(7,'x');
//helloxx
⚠️ string에 대해서만 가능하다!
그러나 new Date()를 통해 가져오는 현재 시각은 string이 아닌 number
=> number를 string으로 만든 후 padStart/padEnd를 진행
function getClock(){
const date = new Date();
const hours = String(date.getHours()).padStart(2,'0');
const minutes = String(date.getMinutes()).padStart(2,'0');
const seconds = String(date.getSeconds()).padStart(2,'0');
clock.innerText = `${hours}:${minutes}:${seconds}`;
}
getClock();
setInterval(getClock, 1000);
See the Pen clock by Kyoungeun Jo (Joe) (@Kyoungeun-Jo-Joe) on CodePen.
완성~~
'🌐 Web > 🟡 JavaScript' 카테고리의 다른 글
[JavaScript] 투두리스트 만들기() (0) | 2023.05.10 |
---|---|
[JavaScript] 명언 랜덤하게 보여주기(Math.random()) (0) | 2023.05.09 |
[JavaScript] setInterval, setTimeout 공부(2) (0) | 2023.05.08 |
[JavaScript] localStorage API (0) | 2023.05.07 |
[JavaScript] 셀렉터 종류 (0) | 2022.11.23 |