doksam-ui
홈ProfilesTokensIconsComponentsPatternsTemplatesRules

formatWon

원화 금액을 억/조 단위로 축약해 표시하는 유틸입니다(news FlowPanel eok() 이식, #18).

데모

표시: 1.0조

코드

import { formatWon } from "@/lib/finance/format-won"

function AmountCell({ won }: { won: number }) {
  return <span className="font-mono">{formatWon(won)}</span>
}

사용 규칙

Do
  • 1억 미만은 원 단위(천단위 콤마), 1억 이상은 억, 반올림 후 10,000억 이상이면 조로 자동 축약된다 — 구간별 분기를 직접 짜지 않는다.
  • 조 전환은 반올림된 억 값 기준으로 판단하므로 9,999.6억처럼 경계에 걸친 값도 '10,000억'으로 새지 않고 정확히 '1.0조'로 표시된다.
  • NaN·Infinity 같은 비정상 입력에는 '-'를 반환하므로 화면에 NaN이 그대로 노출될 걱정 없이 바로 써도 된다.
Don't
  • formatWon 결과를 정렬·계산에 쓰지 않는다 — 억/조 단위 문자열이라 원본 숫자(원 단위)를 별도로 보관해야 한다.
  • formatWon은 100만원 미만 소수 단위(만원 등) 축약은 지원하지 않는다 — 억 미만 표시가 세밀해야 하면 toLocaleString을 직접 쓴다.