본문 바로가기

언어/javascript

javascript : Date 객체

반응형

기본적인 생성법

var date = new Date();

console.log(date);
2020-12-16T08:19:08.061Z

 

여러가지 사용법

// 문자열을 사용한 Date 객체 생성
var date = new Date('December 9, 1991');
var date = new Date('December 9, 1991 02:24:23')

// 숫자를 사용한 Date 객체 생성
var date = new Date(1991, 11, 9);
var date = new Date(1991, 11, 9, 2, 24, 23);
var date = new Date(1991, 11, 9, 24, 23, 1);

// Unix time을 계산한 방법
// 1970년 1월 1일 12시 자정을 기준으로 흐른 시간.
var date = new Date(2732741033257);

 

일주일 후의 시간 구하기

var date = new Date();

date.setDate(date.getDate() + 7);

console.log(date);

 

객체의 toString 메서드들

var date = new Date(1991, 11, 9);

var output = '';

output += 'toDateString: ' + date.toDateString() + '\n';
output += 'toGMTString: ' + date.toGMTString() + '\n';
output += 'toLocaleDateString: ' + date.toLocaleDateString() + '\n';
output += 'toLocaleString:' + date.toLocaleString() + '\n';
output += 'toLocaleTimeString: ' + date.toLocaleTimeString() + '\n';
output += 'toString: ' + date.toTimeString() + '\n';
output += 'toTimeString:' + date.toTimeString() + '\n';
output += 'toUTCString: ' + date.toUTCString();
console.log(output);
toDateString: Mon Dec 09 1991
toGMTString: Sun, 08 Dec 1991 15:00:00 GMT
toLocaleDateString: 1991-12-9
toLocaleString:1991-12-9 12:00:00 ├F10: AM┤
toLocaleTimeString: 12:00:00 ├F10: AM┤
toString: 00:00:00 GMT+0900 (GMT+09:00)
toTimeString:00:00:00 GMT+0900 (GMT+09:00)
toUTCString: Sun, 08 Dec 1991 15:00:00 GMT

 

날짜 간격을 구하는 방법

var now = new Date();
var before = new Date('December 9, 1991');

var interval = now.getTime() - before.getTime();

// 숫자 인수보다 작거나 같은 가장 큰 정수를 반환합니다.
// Returns the greatest integer less than or equal to its numeric argument.
interval = Math.floor(interval / (1000 * 60 * 60 * 24));

console.log('Interval: ' + interval + '일');
Interval: 10600일

 

프로토타입을 이용한 날짜 구하는 방법

Date.prototype.getInterval = function (otherDate) {
    // 변수를 선언합니다.
    var interval;

    // 양수로 날짜 간격을 구하려고 조건문을 사용합니다.
    if (this > otherDate) {
        interval = this.getTime() - otherDate.getTime();
    } else {
        interval = otherDate.getTime() - this.getTime();
    }

    // 리턴합니다.
    return Math.floor(interval / (1000 * 60 * 60 * 24));
};

// 변수를 선언합니다.
var now = new Date();
var before = new Date('December 9, 1991');

// 출력합니다.
console.log('Interval: ' + now.getInterval(before) + '일');
Interval: 10600일

 

반응형

'언어 > javascript' 카테고리의 다른 글

javascript : map  (0) 2020.12.16
javascript: forEach  (0) 2020.12.16
javascript : array 객체의 remove사용법  (0) 2020.12.15
javascript : array sort 방법  (0) 2020.12.15
javascript : HTML 관련 메서드  (0) 2020.12.15