ν‹°μŠ€ν† λ¦¬ λ·°

λ°˜μ‘ν˜•

πŸ•’ JavaScript – νŠΉμ • κΈ°κ°„ μ™Έμ—λ§Œ λ™μž‘ν•˜κ²Œ ν•˜κΈ°

μ›Ή νŽ˜μ΄μ§€μ—μ„œ νŠΉμ • κΈ°λŠ₯을 νŠΉμ • μ‹œκ°„λŒ€μ—λ§Œ μ œν•œν•˜κ±°λ‚˜,
일정 κΈ°κ°„ μ™Έμ—μ„œλ§Œ μ‹€ν–‰λ˜λ„λ‘ ν•˜κ³  싢을 λ•Œκ°€ μžˆμŠ΅λ‹ˆλ‹€.
예λ₯Ό λ“€μ–΄, 이벀트 νŽ˜μ΄μ§€λ‚˜ 점검 μ‹œκ°„ λ™μ•ˆ 싀행을 막고 싢을 λ•Œ μ‚¬μš©ν•©λ‹ˆλ‹€.

μ•„λž˜ μ˜ˆμ‹œλŠ” 2022λ…„ 1μ›” 17일 20μ‹œ~23μ‹œ μ‚¬μ΄μ—λŠ” toDo()κ°€ μ‹€ν–‰λ˜μ§€ μ•Šλ„λ‘ μ„€μ •ν•˜λŠ” μ½”λ“œμž…λ‹ˆλ‹€.


🧩 예제 μ½”λ“œ

var today = new Date();
var startDate = new Date(2022, 0, 17, 20, 0, 0); // 2022-01-17 20:00:00
var endDate   = new Date(2022, 0, 17, 23, 0, 0); // 2022-01-17 23:00:00

// μ§€μ •λœ κΈ°κ°„ μ™Έμ—μ„œλ§Œ μ‹€ν–‰
if (today >= endDate || today <= startDate) {
    toDo();
}

πŸ“Œ 즉, 20μ‹œ μ΄μ „μ΄κ±°λ‚˜ 23μ‹œ 이후일 λ•Œλ§Œ toDo()κ°€ μ‹€ν–‰λ©λ‹ˆλ‹€.
20μ‹œ~23μ‹œ μ‚¬μ΄μ—λŠ” 쑰건이 falseκ°€ λ˜μ–΄ μ‹€ν–‰λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.


🧠 μ½”λ“œ μ„€λͺ…

λ³€μˆ˜ μ„€λͺ…
today ν˜„μž¬ μ‹œκ°(Date 객체)
startDate μ‹œμž‘ μ‹œκ° (ν¬ν•¨λ˜μ§€ μ•ŠμŒ)
endDate μ’…λ£Œ μ‹œκ° (ν¬ν•¨λ˜μ§€ μ•ŠμŒ)
toDo() 쑰건을 λ§Œμ‘±ν•  λ•Œ μ‹€ν–‰ν•  μ‚¬μš©μž μ •μ˜ ν•¨μˆ˜

new Date(연도, μ›”, 일, μ‹œ, λΆ„, 초)μ—μ„œ
μ›”(month)은 0λΆ€ν„° μ‹œμž‘ν•˜λ―€λ‘œ,
1월은 0, 12월은 11둜 μž…λ ₯ν•΄μ•Ό ν•©λ‹ˆλ‹€.


βš™οΈ ν™œμš© μ˜ˆμ‹œ

1️⃣ νŠΉμ • μ‹œκ°„λŒ€ 접속 차단

if (today >= startDate && today <= endDate) {
    alert('ν˜„μž¬λŠ” 점검 μ‹œκ°„μž…λ‹ˆλ‹€.');
} else {
    loadPage();
}

2️⃣ νŠΉμ • λ‚ μ§œμ—λ§Œ μ‹€ν–‰

var now = new Date();
if (now.toDateString() !== "Mon Jan 17 2022") {
    showBanner();
}

🧾 μ‘μš© 팁

  • μ‹œκ°„λŒ€ 계산 μ‹œ 주의:
    μ„œλ²„ μ‹œκ°„κ³Ό λΈŒλΌμš°μ € μ‹œκ°„μ΄ λ‹€λ₯Ό 수 μžˆμŠ΅λ‹ˆλ‹€.
    μ ˆλŒ€μ μΈ 기쀀이 ν•„μš”ν•˜λ©΄ μ„œλ²„μ—μ„œ ν˜„μž¬ μ‹œκ°μ„ μ „λ‹¬λ°›λŠ” 방식을 μΆ”μ²œν•©λ‹ˆλ‹€.

  • 반볡 μ‹€ν–‰ μ‹œμ—λŠ” interval λŒ€μ‹  쑰건문으둜 μ œμ–΄:
    예λ₯Ό λ“€μ–΄ 이벀트 타이머λ₯Ό λ§Œλ“€ λ•ŒλŠ” setInterval()보닀
    requestAnimationFrame()κ³Ό 쑰건문 쑰합이 효율적일 수 μžˆμŠ΅λ‹ˆλ‹€.


βœ… 정리

쑰건 의미
today >= endDate μ’…λ£Œ μ‹œκ°„ 이후
today <= startDate μ‹œμž‘ μ‹œκ°„ 이전
if (λ‘˜ 쀑 ν•˜λ‚˜λΌλ„ true) μ§€μ •λœ κΈ°κ°„ 외라면 μ‹€ν–‰

πŸ‘‰ κ²°κ΅­ β€œνŠΉμ • μ‹œκ°„λŒ€μ—λŠ” λ©ˆμΆ”κ³ , κ·Έ μ™Έμ˜ μ‹œκ°„μ—λ§Œ μ‹€ν–‰β€μ‹œν‚€λŠ” κ°„λ‹¨ν•œ λ‘œμ§μž…λ‹ˆλ‹€.

λŒ“κΈ€