๐Ÿ“– Date

c_yjยท2022๋…„ 7์›” 7์ผ
0

DeepDive

๋ชฉ๋ก ๋ณด๊ธฐ
27/42
post-thumbnail

ํ‘œ์ค€ ๋นŒํŠธ์ธ ๊ฐ์ฒด์ธ Date๋Š” ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ์œ„ํ•œ ๋ฉ”์„œ๋“œ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋นŒํŠธ์ธ ๊ฐ์ฒด์ด๋ฉด์„œ ์ƒ์„ฑ์ž ํ•จ์ˆ˜๋‹ค.

Date ์ƒ์„ฑ์ž ํ•จ์ˆ˜ โ“

Date๋Š” ์ƒ์„ฑ์ž ํ•จ์ˆ˜๋‹ค. Date ์ƒ์„ฑ์ž ํ•จ์ˆ˜๋กœ ์ƒ์„ฑํ•œ Date ๊ฐ์ฒด๋Š” ๋‚ด๋ถ€์ ์œผ๋กœ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ๊ฐ–๋Š”๋‹ค.

new Date() โ—

Date ์ƒ์„ฑ์ž ํ•จ์ˆ˜๋ฅผ ์ธ์ˆ˜ ์—†์ด new ์—ฐ์‚ฐ์ž์™€ ํ•จ๊ป˜ ํ˜ธ์ถœํ•˜๋ฉด ํ˜„์žฌ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ๊ฐ€์ง€๋Š” Date ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.Date ๊ฐ์ฒด๋Š” ๋‚ด๋ถ€์ ์œผ๋กœ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜๊ฐ’์„ ๊ฐ–์ง€๋งŒ Date ๊ฐ์ฒด๋ฅผ ์ฝ˜์†”์— ์ถœ๋ ฅํ•˜๋ฉด ๊ธฐ๋ณธ์ ์œผ๋กœ ๋‚ ์งœ์™€ ์‹œ๊ฐ„ ์ •๋ณด๋ฅผ ์ถœ๋ ฅ

new Date(); // Mon Jul 06 2020 01:03:17 GMT:0900 (๋Œ€ํ•œ๋ฏผ๊ตญ ํ‘œ์ค€์‹œ)

Date ์ƒ์„ฑ์ž ํ•จ์ˆ˜๋ฅผ new ์—ฐ์‚ฐ์ž ์—†์ด ํ˜ธ์ถœํ•˜๋ฉด Date ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜ํ•˜์ง€ ์•Š๊ณ  ๋‚ ์งœ์™€ ์‹œ๊ฐ„ ์ •๋ณด๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜

Date(); // "Mon Jul 06 2020 01:03:17 GMT:0900 (๋Œ€ํ•œ๋ฏผ๊ตญ ํ‘œ์ค€์‹œ)"

new Date(milliseconds) โ—

Date ์ƒ์„ฑ์ž ํ•จ์ˆ˜์— ์ˆซ์ž ํƒ€์ž…์˜ ๋ฐ€๋ฆฌ์ดˆ๋ฅผ ์ธ์ˆ˜๋กœ ์ „๋‹ฌํ•˜๋ฉด 1970๋…„ 1์›” 1์ผ 00:00:00(UTC)์„ ๊ธฐ์ ์œผ๋กœ ์ธ์ˆ˜๋กœ ์ „๋‹ฌ๋œ ๋ฐ€๋ฆฌ์ดˆ๋งŒํผ ๊ฒฝ๊ณผํ•œ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋Š” Date ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

// ํ•œ๊ตญ ํ‘œ์ค€์‹œ KST๋Š” ํ˜‘์ • ์„ธ๊ณ„์‹œ UTC์— 9์‹œ๊ฐ„์„ ๋”ํ•œ ์‹œ๊ฐ„์ด๋‹ค.
new Date(0); // Mon Jul 06 2020 01:03:17 GMT:0900 (๋Œ€ํ•œ๋ฏผ๊ตญ ํ‘œ์ค€์‹œ)

1s = 1,000ms
1m = 60s * 1,000ms - 60,000ms;
1h = 60m * 60,000ms = 3,600,000ms
1d = 24h * 3,600,600ms = 86,400,000ms

new Date(86400000); // Mon Jul 07 2020 01:03:17 GMT:0900 (๋Œ€ํ•œ๋ฏผ๊ตญ ํ‘œ์ค€์‹œ)

new Date(dateString) โ—

Date ์ƒ์„ฑ์ž ํ•จ์ˆ˜์— ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฌธ์ž์—ด์„ ์ธ์ˆ˜๋กœ ์ „๋‹ฌํ•˜๋ฉด ์ง€์ •๋œ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋Š” Date ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์ด๋–„ ์ธ์ˆ˜๋กœ ์ „๋‹ฌํ•œ ๋ฌธ์ž์—ด์€ Date.parse ๋ฉ”์„œ๋“œ์— ์˜ํ•ด ํ•ด์„ ๊ฐ€๋Šฅํ•œ ํ˜•์‹์ด์–ด์•ผ ํ•œ๋‹ค.

new Date('May 26, 2020 10:00:00');
// Tue May 26 2020 10:00:00 GMT+0900 (๋Œ€ํ•œ๋ฏผ๊ตญ ํ‘œ์ค€์‹œ)
new Date('2020/03/26/10:00:00');
// Tue Mar 26 2020 10:00:00 GMT+0900 (๋Œ€ํ•œ๋ฏผ๊ตญ ํ‘œ์ค€์‹œ)

new Date(year,month[,day,hour,minute,second,millisecond]) โ—

Date ์ƒ์„ฑ์ž ํ•จ์ˆ˜์— ์—ฐ,์›”,์ผ,์‹œ,๋ถ„,์ดˆ,๋ฐ€๋ฆฌ์ดˆ๋ฅผ ์˜๋ฏธํ•˜๋Š” ์ˆซ์ž๋ฅผ ์ธ์ˆ˜๋กœ ์ „๋‹ฌํ•˜๋ฉด ์ง€์ •๋œ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋Š” Date ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์ด๋–„ ์—ฐ,์›”์€ ๋ฐ˜๋“œ์‹œ ์ง€์ •ํ•ด์•ผ ํ•œ๋‹ค. ์ง€์ •ํ•˜์ง€ ์•Š์€ ์˜ต์…˜ ์ •๋ณด๋Š” 0 ๋˜๋Š” 1๋กœ ์ดˆ๊ธฐํ™”๋œ๋‹ค

// ์›”์„ ๋‚˜ํƒ€๋‚ด๋Š” 2๋Š” 3์›”์„ ์˜๋ฏธํ•œ๋‹ค. 2020/3/1/00:00:00:00
new Date(2020, 2);
// Sun Mar 01 2020 00:00:00 GMT:0900 (๋Œ€ํ•œ๋ฏผ๊ตญ ํ‘œ์ค€์‹œ)
new Date(2020,2,26,10,00,00,0);
// Thu Mar 26 2020 10:00:00 GMT:0900 (๋Œ€ํ•œ๋ฏผ๊ตญ ํ‘œ์ค€์‹œ)

// ๋‹ค์Œ์ฒ˜๋Ÿผ ํ‘œํ˜„ํ•˜๋ฉด ๊ฐ€๋…์„ฑ์ด ํ›จ์”ฌ ์ข‹๋‹ค.
new Date('2020/3/26/10:00:00:00');
// Thu Mar 26 2020 10:00:00 GMT:0900 (๋Œ€ํ•œ๋ฏผ๊ตญ ํ‘œ์ค€์‹œ)

Date ๋ฉ”์„œ๋“œ โ“

Date.now โ—

1970๋…„ 1์›” 1์ผ 00:00:00(UTC)์„ ๊ธฐ์ ์œผ๋กœ ํ˜„์žฌ ์‹œ๊ฐ„๊นŒ์ง€ ๊ฒฝ๊ณผํ•œ ๋ฐ€๋ฆฌ์ดˆ๋ฅผ ์ˆซ์ž๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

const now = Date.now(); // 1593971539112

// Date ์ƒ์„ฑ์ž ํ•จ์ˆ˜์— ์ˆซ์ž ํƒ€์ž…์˜ ๋ฐ€๋ฆฌ์ดˆ๋ฅผ ์ธ์ˆ˜๋กœ ์ „๋‹ฌํ•˜๋ฉด 1970๋…„ 1์›” 1์ผ 00:00:00(UTC)์„
// ๊ธฐ์ ์œผ๋กœ ์ธ์ˆ˜๋กœ ์ „๋‹ฌ๋œ ๋ฐ€๋ฆฌ์ดˆ๋งŒํผ ๊ฒฝ๊ณผํ•œ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋Š” Date ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
new Date(now);

Date.parse โ—

1970๋…„ 1์›” 1์ผ 00:00:00(UTC)์„ ๊ธฐ์ ์œผ๋กœ ์ธ์ˆ˜๋กœ ์ „๋‹ฌ๋œ ์ง€์ • ์‹œ๊ฐ„(new Date(dateString)์˜ ์ธ์ˆ˜์™€ ๋™์ผํ•œ ํ˜์‹)๊นŒ์ง€์˜ ๋ฐ€๋ฆฌ์ดˆ๋ฅผ ์ˆซ์ž๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

// UTC
Date.parse('Jan 2, 1970 00:00:00 UTC') // 86400000

// KST
Date.parse('Jan 2, 1970 09:00:00'); // 86400000

// KST
Date.parse('1970/01/02/09:00:00'); // 86400000

Date.UTC โ—

1970๋…„ 1์›” 1์ผ 00:00:00(UTC)์„ ๊ธฐ์ ์œผ๋กœ ์ธ์ˆ˜๋กœ ์ „๋‹ฌ๋œ ์ง€์ • ์‹œ๊ฐ„๊นŒ์ง€์˜ ๋ฐ€๋ฆฌ์ดˆ๋ฅผ ์ˆซ์ž๋กœ ๋ฐ˜ํ™˜.
Date.UTC ๋ฉ”์„œ๋“œ๋Š” new Date(year,month[,day,hour,minute,second,millisecond])์™€ ๊ฐ™์€ ํ˜•์‹์˜ ์ธ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค.
Month๋Š” 0~11๊นŒ์ง€์˜ ์ •์ˆ˜๋‹ค. 0๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋ฏ€๋กœ ์ฃผ์˜๊ฐ€ ํ•„์š”!

Date.UTC(1970, 0,2); // 86400000
Date.UTC('1970/1/2'); // NaN

Date.prototype.getFullYear โ—

Date ๊ฐ์ฒด์˜ ์—ฐ๋„๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜๋ฅผ ๋ฐ˜ํ™˜

new Date('2020/07/24').getFullYear(); // 2020

Date.prototype.setFullYear โ—

Date ๊ฐ์ฒด์— ์—ฐ๋„๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜๋ฅผ ์„ค์ •, ์—ฐ๋„ ์ด์™ธ์— ์˜ต์…˜์œผ๋กœ ์›”, ์ผ๋„ ์„ค์ • ๊ฐ€๋Šฅ

const today = new Date();

// ๋…„๋„ ์ง€์ •
today.setFullYear(2000);
today.getFullYear(); // 2000

// ๋…„๋„/์›”/์ผ ์ง€์ •
today.setFullYear(1900,0,1);
today.getFullYear(); // 1900

Date.prototype.getMonth โ—

Date ๊ฐ์ฒด์˜ ์›”์„ ๋‚˜ํƒ€๋‚ด๋Š” 0 ~ 11์˜ ์ •์ˆ˜๋ฅผ ๋ฐ˜ํ™˜

new Date('2020/07/24').getMonth(); // 6

Date.prototype.setMonth โ—

Date ๊ฐ์ฒด์— ์›”์„ ๋‚˜ํƒ€๋‚ด๋Š” 0~11์˜ ์ •์ˆ˜๋ฅผ ์„ค์ • 1์›”์€ 0, 12์›”์€ 11์ด๋‹ค.

const today = new Date();

// ์›” ์ง€์ •
today.setMonth(); // 1์›”
today.getMonth(); // 0

// ์›”/์ผ ์ง€์ •
today.setMonth(11,1); // 12์›” 1์ผ
today.getMonth(); // 11

Date.prototype.getDate โ—

Date ๊ฐ์ฒด์˜ ๋‚ ์งœ(1~31)์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜๋ฅผ ๋ฐ˜ํ™˜

new Date('2020/07/24').getDate(); // 24

Date.prototype.setDate โ—

Date ๊ฐ์ฒด์˜ ๋‚ ์งœ(1~31)์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜๋ฅผ ์„ค์ •

const today = new Date();

// ๋‚ ์งœ ์ง€์ •
today.setDate(1);
today.getDate(); // 1

Date.prototype.getDay โ—

Date ๊ฐ์ฑ„์˜ ์š”์•Œ(0 ~ 6)์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

new Date('2020/07/24').getDay(); // 5

Date.prototype.getHours โ—

Date ๊ฐ์ฑ„์˜ ์‹œ๊ฐ„(0~23)์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

new Date('2020/07/24/12:00').getHours(); // 12

Date.prototype.setHours โ—

Date ๊ฐ์ฒด์— ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜๋ฅผ ์„ค์ •ํ•œ๋‹ค.

const today = new Date();

// ์‹œ๊ฐ„ ์ง€์ •
today.setHours(7);
today.getHours(); // 7

// ์‹œ๊ฐ„/๋ถ„/์ดˆ/๋ฐ€๋ฆฌ์ดˆ ์ง€์ •
today.setHours(0,0,0,0); // 00:00:00:00
today.getHours(); // 0

Date.prototype.getMinutes โ—

Date ๊ฐ์ฒด์˜ ๋ถ„์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

new Date('2020/07/24/12:30').getMinutes(); // 30

Date.prototype.setMinutes โ—

`Date ๊ฐ์ฒด์— ๋ถ„์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜๋ฅผ ์„ค์ •ํ•œ๋‹ค.

const today = new Date();

// ๋ถ„ ์ง€์ •
today.setMinutes(50);
today.getMinutes(); // 50

// ๋ถ„/์ดˆ/๋ฐ€๋ฆฌ์ดˆ ์ง€์ •
today.setMinutes(5,10,999); // HH:05:10:999
today.getMinutes(); // 5

Date.prototype.getSeconds โ—

`Date ๊ฐ์ฒด์˜ ์ดˆ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

new Date('2020/07/24/12:30:10').getSeconds(); // 10

Date.prototype.setSeconds โ—

`Date ๊ฐ์ฒด์˜ ์ดˆ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜๋ฅผ ์„ค์ •ํ•œ๋‹ค.

const today = new Date();

// ์ดˆ ์ง€์ •
today.setSeconds(30);
today.getSeconds(); // 30

// ์ดˆ/๋ฐ€๋ฆฌ์ดˆ ์ง€์ •
today.setSeconds(10,0); // HH:05:10:000
today.getSeconds(); // 10

์˜ˆ์ œ๊ฐ€ ๋„ˆ๋ฌด ๋งŽ์€ ๊ด€๊ณ„๋กœ ์ด์ œ๋ถ€ํ„ฐ๋Š” ์ƒ๋žตํ•˜๊ฒ ๋‹ค. ๐Ÿ–๐Ÿ–

Date.prototype.getMilliseconds โ—

Date ๊ฐ์ฒด์˜ ๋ฐ€๋ฆฌ์ดˆ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜๋ฅผ ๋ฐ˜ํ™˜

Date.prototype.setMilliseconds โ—

Date ๊ฐ์ฒด์˜ ๋ฐ€๋ฆฌ์ดˆ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜๋ฅผ ์„ค์ •

Date.prototype.getTime โ—

1970๋…„ 1์›” 1์ผ 00:00:00(UTC)๋ฅผ ๊ธฐ์ ์œผ๋กœ Date ๊ฐ์ฒด์˜ ์‹œ๊ฐ„๊นŒ์ง€ ๊ฒฝ๊ณผ๋œ ๋ฐ€๋ฆฌ์ดˆ๋ฅผ ๋ฐ˜ํ™˜

Date.prototype.setTime โ—

Date ๊ฐ์ฒด์— 1970๋…„ 1์›” 1์ผ 00:00:00(UTC)๋ฅผ ๊ธฐ์ ์œผ๋กœ ๊ฒฝ๊ณผ๋œ ๋ฐ€๋ฆฌ์ดˆ๋ฅผ ์„ค์ •

Date.prototype.getTimezoneOffset โ—

UTC์™€ Date ๊ฐ์ฒด์— ์ง€์ •๋œ ๋กœ์บ˜ ์‹œ๊ฐ„๊ณผ์˜ ์ฐจ์ด๋ฅผ ๋ถ„ ๋‹จ์œ„๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค. KST๋Š” UTC์— 9์‹œ๊ฐ„์„ ๋”ํ•œ ์‹œ๊ฐ„์ด๋‹ค. ์ฆ‰ UTC = KST - 9h๋‹ค

Date.prototype.toDateString โ—

์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ํ˜•์‹์˜ ๋ฌธ์ž์—ด๋กœ Date ๊ฐ์ฒด์˜ ๋‚ ์งœ๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

Date.prototype.toTimeString โ—

์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ํ˜•์‹์œผ๋กœ Date ๊ฐ์ฒด์˜ ์‹œ๊ฐ„์„ ํ‘œํ˜„ํ•œ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜

Date.prototype.toISOString โ—

ISO 8601 ํ˜•์‹์œผ๋กœ Date ๊ฐ์ฒด์˜ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ํ‘œํ˜„ํ•œ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜

Date.prototype.toLocaleString โ—

ํ•จ์ˆ˜๋กœ ์ „๋‹ฌํ•œ ๋กœ์บ˜์„ ๊ธฐ์ค€์œผ๋กœ Date ๊ฐ์ฒด์˜ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ํ‘œํ˜„ํ•œ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•œใ„ท. ์ธ์ˆ˜๋ฅผ ์ƒ๋žตํ•œ ๊ฒฝ์šฐ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋™์ž‘ ์ค‘์ธ ์‹œ์Šคํ…œ์˜ ๋กœ์บ˜์„ ์ ์šฉํ•œ๋‹ค.

Date.prototype.toLocaleTimeString โ—

์ธ์ˆ˜๋กœ ์ „๋‹ฌํ•œ ๋กœ์บ˜์„ ๊ธฐ์ค€์œผ๋กœ Date ๊ฐ์ฒด์˜ ์‹œ๊ฐ„์„ ํ‘œํ˜„ํ•œ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์ธ์ˆ˜๋ฅผ ์ƒ๋žตํ•œ ๊ฒฝ์šฐ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ž‘๋™ ์ค‘์ธ ์‹œ์Šคํ…œ์˜ ๋กœ์บ˜์„ ์ ์šฉํ•œ๋‹ค.

Date๋ฅผ ํ™œ์šฉํ•œ ์‹œ๊ณ„ ๐Ÿ˜€

ํ˜„์žฌ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ์ดˆ ๋‹จ์œ„๋กœ ๋ฐ˜๋ณต ์ถœ๋ ฅ

(function printNow(){
  const toay = new Date();
  
  const dayNames = [
    "(์ผ์š”์ผ)",
    "(์›”์š”์ผ)",
    "(ํ™”์š”์ผ)",
    "(์ˆ˜์š”์ผ)",
    "(๋ชฉ์š”์ผ)",
    "(๊ธˆ์š”์ผ)",
    "(ํ† ์š”์ผ)"
    ];
  // getDay ๋ฉ”์„œ๋“œ๋Š” ํ•ด๋‹น ์š”์ผ(0 ~ 6)์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
  const day = dayNames[today.getDay()];
  
  const year = today.getFullYear();
  const month = today.getMonth() + 1;
  const date = today.getDate();
  let hour = today.getHours();
  let minute = today.getMinutes();
  let second = today.getSeconds();
  const ampm = hour >= 12 ? "PM" : "AM";
  
  // 12์‹œ๊ฐ„์ œ๋กœ ๋ณ€๊ฒฝ
  hour %= 12;
  hour = hour || 12l // hour๊ฐ€ 0์ด๋ฉด 12๋ฅผ ์žฌํ• ๋‹น
  
  // 10 ๋ฏธ๋งŒ์ธ ๋ถ„๊ณผ ์ดˆ๋ฅผ 2์ž๋ฆฌ๋กœ ๋ณ€๊ฒฝ
  minute = minute < 10 ? "0" + minute : minute;
  second = second < 10 ? "0" + second : second;
  
  const now = `${year}๋…„ ${month}์›” ${date}์ผ ${hour}:${minute}:${second} ${ampm}`;
  
 // 1์ดˆ๋งˆ๋‹ค printNow ํ•จ์ˆ˜๋ฅผ ์žฌ๊ถˆ ํ˜ธ์ถœํ•œ๋‹ค. 
  setTimeOut(printNow, 1000);
}());
profile
FrontEnd Developer

0๊ฐœ์˜ ๋Œ“๊ธ€