๐Ÿ“– TIL - toISOString์„ ์ด์šฉํ•˜์—ฌ ํŽธ๋ฆฌํ•˜๊ฒŒ Dateํ˜•์‹ ์ฐ์–ด๋ณด์ž

์Š˜ยท2024๋…„ 12์›” 27์ผ

๐Ÿ“– TIL

๋ชฉ๋ก ๋ณด๊ธฐ
12/90

๐Ÿ“Œ ๋ฌธ์ œ ์„ค๋ช…

ํ”„๋กœ์ ํŠธ๋ฅผ ํ•˜๋‹ค๋ณด๋ฉด Dateํ˜•์‹์„ ์ง€์ •ํ•ด์•ผ ํ•  ์ผ์ด ์•„์ฃผ ๋งŽ์€๋ฐ,
ex) 2024-12-27
์œ„์™€ ๊ฐ™์€ ํ˜•์‹์„ ๋งŽ์ด ์„ ํ˜ธํ•˜๋Š”๋“ฏ ํ•˜๋‹ค.

๐Ÿค” ๋ฌธ์ œ ์ ‘๊ทผ

๋ณดํ†ต ํ”„๋กœ์ ํŠธ์— ์‚ฌ์šฉ์„ ํ•œ๋‹ค๊ณ  ํ•˜๋ฉด

function getTodayDate() {
      const today = new Date();
      const year = today.getFullYear();
      const month = String(today.getMonth() + 1).padStart(2, '0');
      const day = String(today.getDate()).padStart(2, '0');
      return `${year}-${month}-${day}`;
}

์™€ ๊ฐ™์€ ํ˜•์‹์„ ์ง€์ •ํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ณค ํ–ˆ๋‹ค.
ํ•˜์ง€๋งŒ ์ด๋ ‡๊ฒŒ ์—ฌ๋Ÿฌ์ค„๋กœ ์งœ๋Š”๊ฒƒ์ด ๋ฌธ๋“ ๋น„ ํšจ์œจ์ ์ด๋‹ค๋ผ๊ณ  ์ƒ๊ฐ์ด ๋“ค์—ˆ๋‹ค..
๋ฌผ๋ก  ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ์€ ์•„์ฃผ ์ข‹์œผ๋‚˜,
dateํ˜•์‹์„ ์ง€์ •ํ•˜๊ธฐ ์œ„ํ•ด 5์ค„๊ฐ€๋Ÿ‰์ด ๋˜๋Š” ์ฝ”๋“œ๋ฅผ ์งœ๋Š”๊ฒƒ์ด ๋งž๋Š”๊ฑธ๊นŒ?

์—ด์‹ฌํžˆ ๊ตฌ๊ธ€๋ง์„ ํ•ด๋ณด๋‹ˆ, ๋ฐœ๊ฒฌํ•œ ์ฝ”๋“œ๊ฐ€ ์žˆ์—ˆ๋‹ค.

  1. ํ•œ์ค„๋กœ ์ž‘์„ฑ์ด ๊ฐ€๋Šฅํ•˜๊ณ 
  2. ๊ฐ€๋…์„ฑ์ด ์žˆ๋Š” ์ฝ”๋“œ

๐Ÿ’ก ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

const date = document.getElementById("date");
date.value = new Date().toISOString().split("T")[0];
// or
date.value = new Date().toISOString().slice(0, 10);

๐Ÿ” ์ฝ”๋“œ ์„ค๋ช…

date.value = new Date().toISOString().split("T")[0];

1. new Date().toISOString()

toISOString()์€ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ YYYY-MM-DDTHH:mm:ss.sssZ ํ˜•์‹์œผ๋กœ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

2. split('T')[0]

toISOString()์€ ๋‚ ์งœ์™€ ์‹œ๊ฐ„ ๋ถ€๋ถ„์„ T๋กœ ๊ตฌ๋ถ„ํ•˜๋ฏ€๋กœ(2024-12-27T14:30:00.000Z
), split('T')[0]์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‚ ์งœ ๋ถ€๋ถ„๋งŒ ์ถ”์ถœํ•˜๋Š” ๋ฐฉ์‹์€ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ ์ด ๋ถ€๋ถ„์€ toISOString()์„ ์•Œ๊ณ  ์žˆ์ง€ ์•Š๋‹ค๋ฉด ์šฐ์„ ์ ์œผ๋กœ ์ฝ˜์†”๋กœ ์ฐ์€ํ›„์— ์ดํ•ด๋ฅผ ํ•ด์•ผํ•œ๋‹ค๋ผ๋Š” ๋ถ€๋ถ„์ด ์กฐ๊ธˆ ๊ฑธ๋ฆฌ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ƒ๊ฐํ•œ ๋ฐฉ๋ฒ•์ด..
๋งŒ์•ฝ ๋” ๋ช…์‹œ์ ์ด๊ณ  ์ง๊ด€์ ์ธ ๋ฐฉ๋ฒ•, slice๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‚ ์งœ๋งŒ ์ž˜๋ผ๋‚ผ ์ˆ˜๋„ ์žˆ์„๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
.slice(0, 10);

+) ์ˆ˜์ •
ํ•ด๋‹น toISOString()์€ UTC ๊ธฐ์ค€์ด๊ธฐ๋•Œ๋ฌธ์—, ํ•œ๊ตญ ๋กœ์ปฌ ์‹œ๊ฐ„๋Œ€์— ๋งž์ถ”๊ธฐ ์œ„ํ•ด์„ ,
const KSTDate = new Date(date.getTime() + 9 * 60 * 60 * 1000); // 9์‹œ๊ฐ„ ๋”ํ•˜๊ธฐ
KSTDate.toISOString()์œผ๋กœ ๋งž์ถ”์–ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค.

โœจ ์ƒˆ๋กญ๊ฒŒ ๋ฐฐ์šด ์ 

์—ฌ๋Ÿฌ์ค„์˜ ์ฝ”๋“œ๋กœ ์‚ฌ์šฉํ•ด ์™”๋˜ Date ํ˜•์‹์„ ๋‹จ์ผ์ฝ”๋“œ๋กœ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿš€ ์ด๋Ÿฐ ์ ์ด ํšจ์œจ์ ์ด์—์š”

  1. ๋ช…์‹œ์ ์ด๊ณ  ์ง๊ด€์ ์ด๋‹ค
  2. ์ฝ”๋“œ๋ฅผ ์ข€๋” ํšจ์œจ์ ์œผ๋กœ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค.

โญ๏ธ ์ฐธ๊ณ  ์ž๋ฃŒ

toISOString[mdn_web_doc]

profile
์ฃผ๋‹ˆ์–ด ํ”„๋ก ํŠธ์—”๋“œ ์„ฑ์žฅ๊ธฐ ๊ธฐ๋ก๊ธฐ๋ก

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