1) 날짜 생성하기
let date = new Date(2012, 1, 20, 3, 12);
alert(date);
2) 요일 보여주기
// switch문 사용
function getWeekDay(date) {
switch(date.getDay()) {
case 0:
return 'SU';
break;
case 1:
return 'MO';
break;
case 2:
return 'TU';
break;
case 3:
return 'WE';
break;
case 4:
return 'TH';
break;
case 5:
return 'FR';
break;
case 0:
return 'SA';
}
}
// array 사용
function getWeekDay(date) {
let days = ['SU', 'MO', 'TU', 'WE', 'TH', 'FR', 'SA'];
return days[date.getDay()];
}
3) 유럽 기준 달력
function getLocalDay(date) {
let day = date.getDay();
if (day === 0) {
day = 7;
}
return day;
}
4) n일 전 '일' 출력하기
function getDateAgo(date, days) {
let newDate = new Date(date);
newDate.setDate(date.getDate() - days);
return newDate.getDate();
}
5) 달의 마지막 일
function getLastDayOfMonth(year, month) {
let date = new Date(year, month+1, 0);
return date.getDate();
}
6) 몇 초나 지났을까요?
function getSecondsToday() {
let day = new Date();
return day.getHours()*3600 + day.getMinutes()*60 + day.getSeconds();
}
7) 몇 초나 남았을까요?
function getSecondsToTomorrow() {
let now = new Date();
let tomorrow = new Date(now.getFullYear(), now.getMonth(), now.getDate()+1);
let diff = tomorrow - now;
return Math.round(diff/1000);
}
8) 상대 날짜 출력하기
function formatDate(date) {
let diff = new Date() - date;
if (diff < 1000) { return '현재'; }
let sec = Math.floor(diff / 1000);
if (sec < 60) { return sec + '초 전'; }
let min = Math.floor(diff / 60000);
if (min < 60) { return min + '분 전'; }
let d = date;
d = [
'0' + d.getDate(),
'0' + (d.getMonth() + 1),
'' + d.getFullYear(),
'0' + d.getHours(),
'0' + d.getMinutes()
].map(component => component.slice(-2));
return d.slice(0, 3).join('.') + ' ' + d.slice(3).join(':');
}
'Web > Javascript' 카테고리의 다른 글
[Javascript] 모던 JS 6.1 (재귀와 스택) 과제 (0) | 2022.07.01 |
---|---|
[Javascript] 모던 JS 5.12 (JSON과 메서드) 과제 (0) | 2022.06.28 |
[Javascript] 모던 JS 5.10 (구조 분해 할당) 과제 (0) | 2022.06.27 |
[Javascript] 모던 JS 5.9 (Object.keys, values, entries) 과제 (0) | 2022.06.26 |
[Javascript] 모던 JS 5.8 (위크맵과 위크셋) 과제 (0) | 2022.06.26 |