지금부터 우리가 해볼 건 string을 문자 2개로 채우는거다.
1 ---> 01
처음 들었던 생각
= 단순히 숫자앞에 0을 출력하면 되는거 아니야...?는 아니다. (12 ---> 012(X)) 2자리수는 필요없기 때문이다. 잘 생각해야 한다. 어떻게 해야 01로 출력이 되는지...
난 처음에 글자수를 세어서 하나이면 앞에 0을 붙여라 라고 생각했음.
===> 틀린 방법은 아니지만, 조건문이라서 코드가 좀 길어졌을수도..?!
목표 : string이 항상 적어도 최소한 2개의 문자를 가지고 있어야 한다는거다.
PadStart(만들고 싶은 string의 길이,만들고 싶은 길이를 충족하지 않을때 앞쪽에 추가하는것)
= 앞쪽 부분을 늘려주는 함수
[콘솔창]
"1".padStart(2,"0") // 01 "12".padStart(2,"0") // 12 : 아무일도 하지 않는다. "1".padStart(3,"0") // 001 " : number".padStart(15,"x") // 'xxxxxx : number'
padEnd도 있는데 얘는 뒤쪽에 문자를 추가하는 거다. 굉장히 유용하지 않은가?! ( •̀ ω •́ )✧
date.getHours( )에는 padStart를 쓸 수없다. getHours ()가 숫자로 출력되기 때문이다.
그렇지만, 우리는 문자를 숫자로 숫자를 문자로 자유롭게 변환시킬수 있기 때문에, 어려운 일은 아니다!
문자 ---> 숫자 : parseInt( )
숫자 ---> 문자 : String( )
const clock = document.querySelector("h2#clock"); 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);