JavaScript を使って通貨形式を数値に変換する

JavaScript を使って通貨形式を数値に変換する

はじめに

WebアプリやECサイトの開発では、「¥12,000」や「-$4,400.50」のような通貨形式の文字列を数値に変換して処理する必要がよくあります。しかし、JavaScriptではこのような文字列をそのまま数値として使うと NaN エラーになる場合があります。

本記事では、正規表現と Number() 関数を使って、通貨記号やカンマを除去し、正しく数値型に変換する方法を解説します。

基本の変換方法

以下のようなコードで、通貨表記を数値に変換できます:

var currency = "-$4,400.50";
var number = Number(currency.replace(/[^0-9.-]+/g, ""));
console.log(number); // -4400.5

🔍 解説

1./[^0-9.-]+/g は、「数字」「小数点」「マイナス記号」以外を削除します。

2.Number() で文字列を数値に変換します。

この方法で、カンマや通貨記号($, ¥, € など)を取り除き、正しく演算できる数値に変換できます。

✅ 汎用関数化(安全チェック付き)

function parseCurrency(str) {
  const cleaned = String(str).trim().replace(/[^0-9.-]+/g, "");
  const num = Number(cleaned);
  return isNaN(num) ? null : num;
}

使用例:

parseCurrency("¥12,000")    // 12000
parseCurrency("-€1,234.56") // -1234.56
parseCurrency("abc")        // null

⚠ 注意点:

✅ まとめ

ステップ内容
正規表現で記号を除去 /[^0-9.-]+/g
Number() で数値に変換
isNaN() でエラーチェック(任意)

この方法は、ユーザー入力やAPIの金額データ処理に最適で、フロントエンド開発に広く応用できます。

関連記事
JavaScriptでURL(パス)からファイル名を取得する
window.location.pathname でURLのパス部分を取得。 lastIndexOf('/') で最後のスラッシュ位置を検出。 substring でスラッシュの次から最後までを切り出し、ファイル名を抽出。
Details
Details
1ヶ月前
JavaScriptでURL(パス)からファイル名を取得する
はじめての二進数|10進数との変換方法をわかりやすく解説【初心者向け】
パソコンやスマホの中で使われている数字の仕組み、それが「二進数(バイナリ)」です。このページでは、10進数 ⇔ 2進数 の変換方法を、初心者の方でも理解できるようにやさしく解説します。 目次 二進数って何? 1|10進数から2進数に変換する […]
aki0o0
aki0o0
1ヶ月前
はじめての二進数|10進数との変換方法をわかりやすく解説【初心者向け】
【2025年6月最新版】TIOBEインデックスで見る人気プログラミング言語ランキングとは?
2025年6月最新版のTIOBEインデックスから、今人気のプログラミング言語を解説。Python、C、C++、Javaなどの注目度や、インデックスの活用方法も紹介します。
解構人
解構人
1ヶ月前
【2025年6月最新版】TIOBEインデックスで見る人気プログラミング言語ランキングとは?
IT業界の初心者が知っておくべきの用語(2025版)
新しいテクノロジーについて話すとき、時々自分がみんなのペースについていけないと感じることはありませんか?あるいは、その業界にいるのに、自分はまだ十分ではないと感じ、多くの専門用語を理解しなければならないこともあるでしょう。
Details
Details
1ヶ月前
IT業界の初心者が知っておくべきの用語(2025版)
jQuery Sortableがスマホなどのタッチスクリーンで使えない場合の対処法
モバイル端末でのクリックイベントとの競合を避けるため、タップ操作には click より touchstart を使うことを推奨。 jQuery UI のバージョンによっては、内部構造が異なる場合があるため、導入時はテストを行うこと。
Details
Details
1ヶ月前
jQuery Sortableがスマホなどのタッチスクリーンで使えない場合の対処法
JavaScriptでナビゲーション以外の場所をクリックしたらナビゲーションを閉じる
本コードは典型的なモバイル用サイドナビゲーションの実装例です。ボタンによる表示切替と、メニュー外クリック検知を組み合わせることで、ユーザー体験を向上させています。さらにESCキーでのメニュー閉鎖も可能にし、アクセシビリティも配慮しています。
Details
Details
1ヶ月前
JavaScriptでナビゲーション以外の場所をクリックしたらナビゲーションを閉じる
フッターのJavaScriptは画像読み込みに影響する?ブラウザの読み込み順と最適化の基本
はじめに Webサイトの表示速度や操作感は、単にコンテンツの量や見た目だけでなく、ブラウザがリソースをどのように読み込むかによっても大きく左右されます。特にJavaScriptや画像の読み込み順序、そしてそれらがどのように相互作用しているか […]
解構人
解構人
27日前
フッターのJavaScriptは画像読み込みに影響する?ブラウザの読み込み順と最適化の基本
画像の遅延読み込みはこう変わる!2025年最新版・Lazy LoadとIntersectionObserverの最適解
2025年最新の画像遅延読み込み(Lazy Load)完全ガイド。ネイティブloading="lazy"とIntersectionObserverの使い分け・実装例・SEOやLCPへの最新対応ポイントまで徹底解説。パフォーマンスと検索順位アップのための必読ノウハウ!
aki0o0
aki0o0
1ヶ月前
画像の遅延読み込みはこう変わる!2025年最新版・Lazy LoadとIntersectionObserverの最適解
ページ遷移の一般的な方法
本記事では、Webページにおけるページ遷移(リダイレクト)の一般的な実装方法について紹介しています。JavaScript、HTMLのメタタグ、PHP、ASPを用いたリダイレクト方法をそれぞれ具体的なコード例と共に解説しています。
Details
Details
1ヶ月前
ページ遷移の一般的な方法
CSSによる絶対中央寄せ
実用性が高い方法順で7種類の実装方法を紹介 最も推奨されるのは Flexbox と Grid transform を使う方法はどんな要素にも応用可能 line-height や table-cell は特定用途向け JavaScript による制御も紹介されている
Details
Details
1ヶ月前
CSSによる絶対中央寄せ
【CSS & JavaScript & SVG対応】円グラフ(扇形図)のアニメーション表現まとめ
はじめに 円グラフ(パイチャート)は、比率や構成比を視覚的に伝えるのに最適なUIコンポーネントです。最近、業務で使う機会があり、さまざまな方法でエフェクトをつけて表示する実装を試しました。 この記事では、以下の3パターンで実装する方法を紹介 […]
キウイフルーツ
キウイフルーツ
21日前
【CSS & JavaScript & SVG対応】円グラフ(扇形図)のアニメーション表現まとめ
JSでウェブサイトのフッターにあるCopyrightの年数範囲を自動更新する
autoCopyright(startYear, elementId) 関数は、指定した開始年から現在年までの著作権表記(例: "2020 - 2025")を自動生成し、指定されたHTML要素に表示します。
Details
Details
1ヶ月前
JSでウェブサイトのフッターにあるCopyrightの年数範囲を自動更新する