728x90
반응형
만나이의 뜻이 궁금하여 찾아 보았지만 잘 모르겠고 추측해보면 일수를 가득 채워야 1년이 지나니까 가득찬 나이라고 명명한 것 같습니다.
이제 본론으로 들어가 볼까요? JS로 만나이를 계산하게 만드려면 어떤 생각을 해야할까요
저도 노트를 펴서 계산을 해보았습니다.ㅋㅋㅋ
만약 생일이 1994.10.25 이라는 친구 'A '
생일이 1994.10.15이라는 친구 'B'가 있으면
오늘이 22.10.19 이니까
A = 27세
B = 28세 입니다.
이렇게 년도만으로는 만나이를 계산할 수 없기에 월과 날까지 비교하면서 만나이를 계산해야겠죠?
1. 년도를 빼서 만나이를 구하고
2. 월과 일을 비교하여 구한 나이에서 하나를 빼든 가만히 두든 하게 해야겠습니다.
그리고 함수로 만들기 위해서 Date()함수에 넣은 인자를 어떤 식으로 넣어야하는지 부터 알아봅시다.
function getW(birthday) {
let birth = new Date(birthday);
console.log(birth);
}
getW("1994, 10, 25");
저는 이렇게 직접 쳐보면서 어떻게 인자를 넣어야 할지 연구해보았습니다. (모든 연구는 노가다 ㅎㅎ)
그랬더니! birthday 인자에 따음표를 넣어서 구현하면 답이 나오더라고요 ㅎㅎ
그러니 인자에는 따음표를 넣어서 구현하자~ 입니다.
이제 드디어 나의 만나이가 몇 살인지 알려주는 함수를 만들어봅시다.
function getWesternAge(birthday) {
let today = new Date()
let birth = new Date(birthday)
let age = today.getFullYear() - birth.getFullYear()
if (today.getMonth()<=birth.getMonth()&&today.getDate()<birth.getDate()){
age--
}
return age
}
console.log(getWesternAge('1994, 10, 25'));
console.log(getWesternAge('1994, 10, 15'));
today 는 오늘 날짜
birth는 birthday 인자를 받은 날짜
age 는 오늘의 년도와 생일 년도를 뺀 값을 계산한 값(나이)
그리고 대망의 오늘보다 월과 일이 빠른지 느린지를 확인하는 if문까지...
이렇게 만들면 모든게 완성입니다.
위에서도 말씀드렸듯이 인자에 따음표를 넣어서 집어넣어야합니다.
'1994.10.15' 이렇게요
반응형
'코딩 개발 > Javascript' 카테고리의 다른 글
JavaScript - 객체 (0) | 2022.10.20 |
---|---|
JavaScript - 랜덤 숫자 뽑기 (로또 프로그램) (0) | 2022.10.19 |
JS - 배열 내 최솟값 찾기 (0) | 2022.10.19 |
Javascript (boot camp day3. / 충격적인 내용 작성) (0) | 2022.10.19 |
Javascript - 단어 나타나기 (0) | 2022.10.11 |