반응형

Date객체

인스턴스화 필요

var d = new Date();

디폴트 객체 생성

var d = new Date('2010/12/04');

문자열 값을 이용하여 생성

var d = new Date(2010, 11, 4, 23, 55, 30, 500);

년월실시분초밀리초를 지정하여 생성

var d = new Date(1217862000000);

1970/01/01 00:00:00 부터의 지나온 시간(밀리초) 지정하여 생성

 

주요 멤버

getFullYear() : 년도 자리

getMonth() : (0~11)

getDate() : (1~31)

getDay() : 요일(0: ~ 6:)

getHours() : (0~23)

getMinutes() : (0~59)

getSeconds() : (0~59)

getMilliseconds() : 밀리초(0~999)

getTime() : 1970/01/01 00:00:00 부터의 지나온 시간(밀리초)

getTimezoneOffset() :

 

setFullYear(year) : 설정

setMonth(month) : 설정

setDate(date) : 설정

setHours(hour) : 설정

setMinutes(minute) : 설정

setSeconds(second) : 설정

setMilliseconds(ms) : 1970/01/01 00:00:00 부터의 지나온 시간(밀리초) 지정

setTime(ts) : 설정

 

위와 비슷하게 utc 대한 시간을 가져오는 메서드도 존재

getUTCFullYear() : 년도 자리

getUTCMonth() : (0~11)

getUTCDate() : (1~31)

getUTCDay() : 요일(0: ~ 6:)

getUTCHours() : (0~23)

getUTCMinutes() : (0~59)

getUTCSeconds() : (0~59)

getUTCMilliseconds() : 밀리초(0~999)

 

setUTCFullYear(year) : 설정

setUTCMonth(month) : 설정

setUTCDate(date) : 설정

setUTCHours(hour) : 설정

setUTCMinutes(minute) : 설정

setUTCSeconds(second) : 설정

setUTCMilliseconds(ms) : 1970/01/01 00:00:00 부터의 지나온 시간(밀리초) 지정

 

정적 parse(dat) : 날짜 문자열을 해석하여 1970/01/01 00:00:00 부터의 밀리초를 얻음

정적 UTC(y, m, d [, h [, mm [, s [, ms]]]]) : UTC기준으로 1970/01/01 00:00:00 부터의 밀리초를 얻음

 

문자열로 변환

toGMTString() : 그리니치 표준시를 문자열로 변환

toUTCString() : 세계협정시를 문자열로

toLocaleString() : 로컬시를 문자열로

toDateString() : 일자 부분을 문자열로

toTimeString() : 시각 부분을 문자열로

toLocaleDateString() : 지역에 따른 날짜 부분을 문자열로

toLocaleTimeString() : 지역에 따른 시각 부분을 문자열로

toString() : 일시를 문자열로

 

date.html

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Date객체</title>
</head>
<body>
<pre>
<script type="text/javascript">
var dat = new Date(2017525113715999);
document.writeln(dat);
document.writeln(dat.getFullYear());
document.writeln(dat.getMonth());
document.writeln(dat.getDate());
document.writeln(dat.getDay());
document.writeln(dat.getHours());
document.writeln(dat.getMinutes());
document.writeln(dat.getSeconds());
document.writeln(dat.getMilliseconds());
document.writeln(dat.getTime());
document.writeln(dat.getTimezoneOffset());
 
document.writeln(dat.getUTCFullYear());
document.writeln(dat.getUTCMonth());
document.writeln(dat.getUTCDate());
document.writeln(dat.getUTCDay());
document.writeln(dat.getUTCHours());
document.writeln(dat.getUTCMinutes());
document.writeln(dat.getUTCSeconds());
document.writeln(dat.getUTCMilliseconds());
 
var dat2 = new Date();
dat2.setFullYear(2011);
dat2.setMonth(7);
dat2.setDate(5);
dat2.setHours(11);
dat2.setMinutes(37);
dat2.setSeconds(15);
dat2.setMilliseconds(513);
 
document.writeln(dat2.toLocaleString());
document.writeln(dat2.toGMTString());
document.writeln(dat2.toUTCString());
document.writeln(dat2.toDateString());
document.writeln(dat2.toTimeString());
document.writeln(dat2.toLocaleDateString());
document.writeln(dat2.toLocaleTimeString());
 
document.writeln(Date.parse('2017/08/05'));
document.writeln(Date.UTC(200885));
 
</script>
</pre>
</body>
</html>
cs

 

날짜/시간 연산

Date객체는 날짜나 시간에 대한 연산을 위한 메서드가 없음

날짜/시간을 계산할 다음과 같은 순서로 메서드를 이용해야 한다.

  1. get메서드로 시간을 가져온다.
  2. 가져온 값에 연산을 처리한다.
  3. 처리된 결과 값을 set으로 설정한다.

dateadd1.html

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Date객체</title>
</head>
<body>
<pre>
<script type="text/javascript">
var dat = new Date(20184151140);
document.writeln(dat.toLocaleString());
dat.setMonth(dat.getMonth() + 3);
document.writeln(dat.toLocaleString());
dat.setDate(dat.getDate() - 20);
document.writeln(dat.toLocaleString());
</script>
</pre>
</body>
</html>
cs

 

dateadd2.html

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Date객체</title>
</head>
<body>
<pre>
<script type="text/javascript">
var dat = new Date(20104151140);
document.writeln(dat.toLocaleString());
dat.setMonth(dat.getMonth() + 1);
dat.setDate(0);
document.writeln(dat.toLocaleString());
</script>
</pre>
</body>
</html>
cs

 

dateadd3.html

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Date객체</title>
</head>
<body>
<pre>
<script type="text/javascript">
var dat1 = new Date(2018415);
var dat2 = new Date(2018520);
var diff = (dat2.getTime() - dat1.getTime()) / (1000 * 60 * 60 * 24);
document.writeln(diff + '일의 차가 있다.');
</script>
</pre>
</body>
</html>
cs
반응형

'교육자료 > Javascript' 카테고리의 다른 글

13. Object 내장객체  (0) 2019.05.09
12. RegExp 객체(정규 표현식)  (0) 2019.05.09
10. Array 내장객체  (0) 2019.05.09
09. Math 내장객체  (0) 2019.05.09
08. Number 내장객체  (0) 2019.05.09

+ Recent posts