Home » 뚝딱 도구
유효하지 않은 날짜입니다.
"; return; } let resultTitle = isSolarToLunar ? "음력 변환 결과" : "양력 변환 결과"; let mainText = "", dayOfWeek = "", zodiac = "", oppositeText = ""; let oppositeLabel = isSolarToLunar ? "양력" : "음력"; let gapjaObj = calendar.getKoreanGapja(); if (isSolarToLunar) { const lunar = calendar.getLunarCalendar(); const solarDate = new Date(y, m - 1, d); dayOfWeek = daysOfWeek[solarDate.getDay()]; let leapStr = lunar.intercalation ? "윤달 " : ""; let monthStr = getKoreanLunarMonth(lunar.month); let dayStr = lunarDaysStr[lunar.day] || (lunar.day + "일"); mainText = `${lunar.year}년 ${leapStr}${lunar.month}월 ${lunar.day}일(${gapjaObj.year} ${monthStr} ${dayStr})`; let zodiacIdx = (lunar.year - 4) % 12; zodiac = zodiacs[zodiacIdx < 0 ? zodiacIdx + 12 : zodiacIdx]; oppositeText = `${y}년 ${m}월 ${d}일`; } else { const solar = calendar.getSolarCalendar(); const solarDate = new Date(solar.year, solar.month - 1, solar.day); dayOfWeek = daysOfWeek[solarDate.getDay()]; mainText = `${solar.year}년 ${solar.month}월 ${solar.day}일`; let zodiacIdx = (y - 4) % 12; zodiac = zodiacs[zodiacIdx < 0 ? zodiacIdx + 12 : zodiacIdx]; let leapStr = isLeap ? "윤달 " : ""; oppositeText = `${y}년 ${leapStr}${m}월 ${d}일`; } const resultHtml = `
${resultTitle}
${mainText}
요일
${dayOfWeek}
천간지지
${gapjaObj.year}
띠
${zodiac}
${oppositeLabel}
${oppositeText}
${convertedStr}`; } catch (e) { resultBox.innerText = "시간 변환에 실패했습니다."; } } // --- 4. 한자 변환 로직 --- const simpleHanjaDictionary = { "대한민국": "大韓民國", "한국": "韓國", "학교": "學校", "학생": "學生", "선생님": "先生님", "사람": "人", "남자": "男子", "여자": "女子", "가족": "家族", "부모": "父母", "친구": "親舊", "시간": "時間", "월": "月", "화": "火", "수": "水", "목": "木", "금": "金", "토": "土", "일": "日" }; function convertHanja() { let inputText = document.getElementById('hanja-input').value; const resultBox = document.getElementById('hanja-result'); if (!inputText.trim()) { resultBox.innerText = "단어를 입력해주세요."; return; } let convertedText = inputText; for (const [hangul, hanja] of Object.entries(simpleHanjaDictionary)) { const regex = new RegExp(hangul, 'g'); convertedText = convertedText.replace(regex, hanja); } if (inputText === convertedText) { resultBox.innerHTML = `${inputText}
*기본 사전에 등록되지 않은 단어입니다. (실제 운영 시 사전 데이터 확장이 필요합니다)`; } else { resultBox.innerHTML = convertedText.replace(/\n/g, '
'); } } // 스크립트 실행 (HTML 로딩 완료 보장) if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initApp); } else { initApp(); } })();
