数値フォーマットとは

数値フォーマットは、数値を読みやすい形式で表示するための処理です。1234567を「1,234,567」と3桁ごとにカンマで区切ったり、0.123を「12.3%」と表示したりする処理が該当します。

3桁区切り(カンマ区切り)

大きな数字は3桁ごとにカンマで区切ると読みやすくなります。ただし、国によって区切り文字が異なります。

  • 日本・アメリカ・イギリス:1,234,567.89(カンマ区切り・ドット小数点)
  • ドイツ・フランス:1.234.567,89(ドット区切り・カンマ小数点)

JavaScriptでの実装

Intl.NumberFormatAPIを使うと、ロケールに対応した数値フォーマットが簡単に実装できます。

// 3桁区切り
new Intl.NumberFormat('ja-JP').format(1234567)
// → '1,234,567'

// 通貨
new Intl.NumberFormat('ja-JP', { style: 'currency', currency: 'JPY' }).format(1234567)
// → '¥1,234,567'

// パーセント
new Intl.NumberFormat('ja-JP', { style: 'percent' }).format(0.123)
// → '12%'

Pythonでの実装

f"{1234567:,}"  # → '1,234,567'
f"{0.123:.1%}"  # → '12.3%'

注意点

  • ユーザーインターフェースでは表示用にフォーマットし、計算にはフォーマット前の数値を使う
  • フォームの入力値からカンマを除去してから数値変換する
  • APIには常にフォーマットなしの数値を送信する