Skip to content

JSONフォーマッター&バリデーター

無料オンラインJSON整形ツール。ブラウザ上でJSONのフォーマット、構文検証、圧縮を即座に実行。エラー検出、ワンクリックコピー対応。データは端末外に送信されず、100%プライバシー保護。

トラッキングなし ブラウザで動作 無料
出力
RFC 8259準拠およびフォーマットの正確性を確認済み — Go Toolsエンジニアリングチーム · Mar 22, 2026

JSONとは?

JSON(JavaScript Object Notation)は、人間にとって読み書きしやすく、マシンにとって解析・生成が容易な、軽量テキストベースのデータ交換フォーマットです。RFC 8259およびECMA-404として標準化されており、事実上すべてのプログラミング言語、API、Webサービス間のデータ交換における世界標準となっています。

JSONの考案者であるDouglas Crockfordは、json.orgで次のように記しています。「JSON's design goals were for it to be minimal, portable, textual, and a subset of JavaScript.」(JSONの設計目標は、最小限であること、移植可能であること、テキストベースであること、そしてJavaScriptのサブセットであることでした。)この意図的なシンプルさこそが、JSONがXMLに勝利し、現代のWebの共通言語となった理由です。

JSONは6つのデータ型をサポートしています:文字列(ダブルクォート囲み)、数値、ブーリアン(true/false)、null、配列(順序付きリスト)、オブジェクト(キーと値のペア)(RFC 8259)。このシンプルさと可読性により、ほとんどの現代Webアプリケーション、REST API、設定ファイルにおいてXMLよりも好まれるフォーマットとなっています。JSONはAPIで最も人気のあるデータフォーマットであり、開発者の86%が使用しています(Postman State of API Report 2023)。

JSONフォーマッターは、未加工または圧縮されたJSONを、データの階層構造が一目でわかる整然としたインデント付き形式に変換します。これはAPIレスポンスのデバッグ、設定ファイルの確認、複雑なネストされたデータ構造の理解に不可欠です。XMLとは異なり、JSONはコメント、属性、名前空間をサポートしません。純粋にデータ表現に特化しています(ECMA-404)。

本ツールはすべてブラウザ内で実行されます。JSONデータが端末の外に出ることは一切ありません。サーバーベースのフォーマッターとは異なり、アップロード、ログ記録、データ保持は一切行われません。APIキー、本番環境の設定、機密データにも安心してご利用いただけます。

JSONは他の開発者ツールと組み合わせて使われることが多くあります。APIのデバッグ時には、[Base64エンコードされた](/tools/base64-decode-encode)JSONペイロード(JWTトークンなど)のデコードが必要になることがあります。また、JSONデータ構造内でユニークな識別子として使用する[UUID](/tools/uuid-generator)の生成にも活用できます。

// Format (pretty-print) JSON with 2-space indentation
const raw = '{"name":"Alice","age":30,"active":true}';
const parsed = JSON.parse(raw);        // parse string → object
const formatted = JSON.stringify(parsed, null, 2);
console.log(formatted);
// → {
//     "name": "Alice",
//     "age": 30,
//     "active": true
//   }

// Minify JSON (strip all whitespace)
const minified = JSON.stringify(parsed);
console.log(minified);
// → '{"name":"Alice","age":30,"active":true}'

主な機能

瞬時フォーマット

任意のJSONを貼り付けると、ミリ秒単位で完璧にインデントされた出力を取得できます。2スペースと4スペースのインデントに対応しています。

リアルタイム検証

入力中に構文エラーを自動検出し、エラーのある行と位置を正確に示す明確なエラーメッセージを表示します。

ワンクリック圧縮

整形済みJSONを1行に圧縮して、本番APIや設定ファイルのファイルサイズを削減します。

100%ブラウザ処理

すべての処理はブラウザ内でローカルに実行されます。データが端末の外に出ることはありません。サーバーへの送信も追跡も一切ありません。

大容量ファイル対応

最大10MBのJSONファイルをスムーズに処理できます。ファイルサイズの警告やクラッシュはありません。

コピー&ダウンロード

結果を即座にエクスポート。ワンクリックでクリップボードにコピーするか、.jsonファイルとしてダウンロードできます。

使用例

APIレスポンス

{"status":200,"data":{"user":{"id":"usr_2x7kP9","name":"Alice Chen","email":"alice@example.com","roles":["admin","editor"],"lastLogin":"2026-03-12T08:30:00Z"},"meta":{"requestId":"req_abc123","timestamp":1741776600}}}

ネストされたユーザーデータとメタ情報を含む一般的なREST APIレスポンスを整形します

パッケージ設定

{"name":"my-app","version":"2.1.0","private":true,"scripts":{"dev":"next dev","build":"next build","start":"next start","lint":"eslint ."},"dependencies":{"react":"^18.2.0","next":"14.1.0"},"devDependencies":{"typescript":"^5.3.0","eslint":"^8.56.0"}}

圧縮されたpackage.json設定ファイルを見やすく整形します

データコレクション

[{"id":1,"product":"Laptop Pro","price":1299.99,"inStock":true,"tags":["electronics","computers"]},{"id":2,"product":"Wireless Mouse","price":29.99,"inStock":false,"tags":["electronics","accessories"]},{"id":3,"product":"USB-C Hub","price":49.99,"inStock":true,"tags":["electronics","accessories"]}]

データベースやECサイトAPIから取得した商品オブジェクトの配列を整形します

ネスト設定

{"database":{"host":"localhost","port":5432,"name":"mydb","pool":{"min":2,"max":10}},"cache":{"enabled":true,"ttl":3600,"provider":"redis"},"logging":{"level":"info","format":"json","outputs":["stdout","file"]}}

データベース、キャッシュ、ログ設定を含む深くネストされたアプリケーション設定にインデントを付けます

使い方

  1. 1

    JSONを貼り付ける

    上の入力欄に未加工のJSONデータを入力するか貼り付けてください。「Load example」をクリックしてサンプルデータを読み込むこともできます。

  2. 2

    整形または圧縮する

    「Format JSON」をクリックしてインデント付きの読みやすい形式にするか、「Minify JSON」をクリックして1行に圧縮します。

  3. 3

    結果をコピーする

    処理結果が出力エリアに表示されます。「Copy」をクリックすると、ワンクリックでクリップボードにコピーできます。

よくあるJSONエラー

末尾のカンマ(トレーリングカンマ)

JSONでは、配列やオブジェクトの最後の要素の後にカンマを置くことは許可されていません。特にJavaScriptコードからのコピー時に最もよく発生するエラーの一つです。

✗ 誤り
{"name": "Alice", "age": 30,}
✓ 正しい
{"name": "Alice", "age": 30}

シングルクォート

JSONではすべての文字列とキーにダブルクォートが必要です。シングルクォートはJavaScriptでは有効ですが、JSONでは無効です。

✗ 誤り
{'name': 'Alice'}
✓ 正しい
{"name": "Alice"}

クォートなしのキー

JSONのすべてのプロパティキーはダブルクォートで囲む必要があります。クォートなしのキーはJavaScriptオブジェクトでは有効ですが、JSONでは無効です。

✗ 誤り
{name: "Alice"}
✓ 正しい
{"name": "Alice"}

コメント

標準JSONはいかなる形式のコメントもサポートしていません。コメントが必要な場合は、JSONC(コメント付きJSON)やYAMLの使用をご検討ください。

✗ 誤り
{"name": "Alice" // user name}
✓ 正しい
{"name": "Alice"}

括弧の不一致

開き括弧・開き波括弧には、対応する閉じ括弧・閉じ波括弧が必要です。括弧の不一致は「Unexpected end of JSON input」エラーの原因となります。

✗ 誤り
{"users": [{"name": "Alice"}
✓ 正しい
{"users": [{"name": "Alice"}]}

予期しないトークン

パーサーがその位置にあるべきでない文字を検出した場合にこのエラーが発生します。一般的な原因は、要素間のカンマの欠落やJSON終了後の余分な文字です。

✗ 誤り
{"name": "Alice" "age": 30}
✓ 正しい
{"name": "Alice", "age": 30}

主な活用シーン

APIレスポンスのデバッグ
圧縮されたAPIレスポンスを読みやすいJSONに整形し、素早くデバッグ・検証を行います。
設定ファイルの整理
package.json、tsconfig.json、.eslintrcなどの設定ファイルを検証し、見やすく整形します。
データの確認・調査
データベース、ログ、サードパーティサービスからエクスポートされたJSONデータを閲覧・分析します。
コードレビュー
JSONスニペットを整形して、コードレビュー時の差分比較をより明確にします。
技術ドキュメント
技術文書やチュートリアル用に、きれいに整形されたJSONサンプルを作成します。
データ移行
新しいシステムにデータをインポートする前に、JSONの構造と構文を検証します。

技術仕様

RFC 8259準拠
Unicodeやエスケープ文字を含む標準JSON仕様を完全にサポートしています。
ブラウザ内処理
すべての整形処理はブラウザ内でネイティブのJSON.parse()とJSON.stringify()を使用してローカルに実行されます。
ファイルサイズ対応
最大10MBのJSONファイルを処理でき、インデント幅(2スペースまたは4スペース)を設定可能です。

ベストプラクティス

使用前に検証する
本番環境でJSONデータを使用する前に、必ず検証を行い、構文エラーを早期に発見しましょう。
一貫したインデントを使用する
可読性とバージョン管理でのファイルサイズを考慮して、2スペースインデントの使用を推奨します。
本番環境では圧縮する
APIレスポンスや設定ファイルでは圧縮JSONを使用して、帯域幅と読み込み時間を削減しましょう。

よくある質問

JSONをオンラインで整形する方法は?
上の入力欄に未整形または圧縮されたJSONを貼り付けて、「Format JSON」をクリックしてください。ツールが即座にデータを解析し、構文を検証して、2スペースインデントで整形された結果を表示します。その後、ワンクリックで結果をクリップボードにコピーできます。すべての処理はブラウザ内でローカルに実行されます。サーバーにデータが送信されることは一切ありません。
JSONが正しいか検証するにはどうすればいいですか?
入力欄にJSONを貼り付けて「Format JSON」をクリックしてください。JSONに構文エラーが含まれている場合、ツールが詳細なエラーメッセージを表示し、何が問題でどこにエラーがあるかを示します。JSONが有効であれば、整形された状態で出力エリアに表示されます。本ツールは現行のJSON標準であるRFC 8259に準拠して検証を行います。
JSONを圧縮(Minify)するにはどうしますか?
入力欄にJSONを貼り付けて「Minify JSON」をクリックしてください。ツールが不要な空白、改行、インデントをすべて除去し、最もコンパクトな形式に変換します。圧縮されたJSONは、APIレスポンス、本番環境の設定ファイル、ファイルサイズや帯域幅を削減したいあらゆる場面に最適です。
このツールでJSONデータのプライバシーは守られますか?
はい、完全に安全です。すべての処理はブラウザ内でJavaScriptネイティブのJSON.parse()とJSON.stringify()を使用してローカルに実行されます。データが端末の外に出ることは絶対にありません。サーバーへのアップロード、Cookie、入力データの分析追跡、いかなる形式のデータ保存も一切ありません。そのため、APIキー、認証情報、機密データにも安心してご利用いただけます。
JSONの「Unexpected token」エラーを修正するには?
「Unexpected token」エラーは、JSONパーサーがその位置にあるべきでない文字を検出したことを意味します。最も一般的な原因は、要素間のカンマの欠落({"name": "Alice" "age": 30})、最後の要素の後のトレーリングカンマ({"name": "Alice",})、またはJSON終了後の余分な文字です。本ツールにJSONを貼り付けると、正確なエラー位置が表示されますので、その周辺の文字を確認してください。
JSONで「末尾のカンマ」エラーが出るのはなぜ?
JSONでは、オブジェクトや配列の最後の要素の後にカンマを置くことは許可されていません。JavaScriptや他の多くの言語ではトレーリングカンマが許可されているため、これは最もよくあるエラーの一つです。例えば、{"name": "Alice", "age": 30,} は無効なJSONです。30の後のカンマを削除すれば修正できます。JavaScriptコードからデータをコピーする場合は、JSONとして使用する前に必ずトレーリングカンマを確認してください。
JSONでシングルクォートは使えますか?
いいえ、使用できません。JSONではすべての文字列とプロパティキーにダブルクォートが必要です。シングルクォートはJavaScriptやPythonでは有効ですが、JSON仕様(RFC 8259)では認められていません。例えば、{'name': 'Alice'} は無効で、{"name": "Alice"} と記述する必要があります。シングルクォートを含むデータを貼り付けると、本ツールが構文エラーを報告し、修正すべき正確な位置を表示します。
JSONにコメントを書くことはできますか?
いいえ、標準JSONはいかなる形式のコメントもサポートしていません。//、/* */、# のいずれの構文も使用できません。これはJSONをシンプルかつ解析可能に保つための意図的な設計判断です。設定ファイルにコメントが必要な場合は、JSONC(VS CodeやTypeScriptで使用されるコメント付きJSON)、JSON5、またはYAMLをご検討ください。コメント付きファイルを標準JSONとして使用するには、解析前にコメントを除去する必要があります。
JSONが正しくパースできないのはなぜですか?
JSONのパースが失敗する最も一般的な理由は以下の通りです。(1) 最後の要素の後のトレーリングカンマ、(2) ダブルクォートではなくシングルクォートの使用、(3) プロパティキーにクォートがない、(4) データ内にコメントが含まれている、(5) 角括弧や波括弧の不足または過剰、(6) 文字列内のバックスラッシュや改行などの特殊文字がエスケープされていない。本ツールにJSONを貼り付けると、エラーの種類と位置を正確に特定し、素早い修正をサポートします。
JSONとYAMLの違いは何ですか?
JSONとYAMLはどちらもデータシリアライゼーション形式ですが、設計思想が異なります。JSONは波括弧、角括弧、ダブルクォートを使用し、厳格な構文を持ちます。マシンによる解析やAPIに最適です。YAMLはインデントと最小限の句読点を使用し、人間にとって読みやすく、設定ファイル(Docker Compose、Kubernetes、GitHub Actions)で広く使われています。JSONはYAMLのサブセットであるため、有効なJSONはすべて有効なYAMLですが、その逆は成り立ちません。
JSON Schemaとは何ですか?
JSON Schemaは、JSON自体の一部ではない独立した標準であり、JSONデータの期待される構造、型、制約を定義するものです。例えば、特定のフィールドが文字列でなければならない、数値が1から100の間でなければならない、配列に最低1つの要素が必要、といった指定が可能です。JSON Schemaは、APIリクエスト/レスポンスの検証、フォーム生成、ドキュメント作成に広く使用されています。本ツールはJSON構文の検証を行いますが、JSON Schemaの検証は行いません。スキーマ検証には専用のJSON Schemaバリデーターをご使用ください。
JSONとJSON5の違いは何ですか?
JSON5はJSONの拡張で、開発者がよく必要とする機能を追加しています。シングルクォートとダブルクォートの両方、トレーリングカンマ、コメント(//と/* */)、クォートなしのキー、複数行文字列、16進数値などに対応しています。JSON5は人間による編集が頻繁に行われる設定ファイルでよく使用されます。標準のJSONパーサーではJSON5を読み取れないため、専用のJSON5パーサーが必要です。本ツールは標準JSON(RFC 8259)のみに対応しています。
JSONファイルの最大サイズはどのくらいですか?
JSON仕様自体にはファイルサイズの制限はありません。実際の制限はパーサーと環境に依存します。ブラウザは通常500MB〜1GBのJSONを処理できますが、それを超えるとメモリの問題が発生する可能性があります。サーバーサイドのパーサー(Node.js、Python、Java)ではストリーミングパーサーを使用してさらに大きなファイルを処理できます。本オンラインツールは約10MBまでのJSONを効率的に処理できます。非常に大きなJSONファイルについては、jqなどのコマンドラインツールやストリーミングパーサーの使用をお勧めします。
圧縮された大きなAPIレスポンスを素早く読みやすくするには?
圧縮されたJSONを本ツールに貼り付けて「Format JSON」をクリックしてください。即座にデータを解析し、2スペースインデントで整形表示します。ネストされたオブジェクトや配列がすぐに見やすくなります。非常に大きなレスポンス(5〜10MB)の場合、このブラウザベースのツールはブラウザネイティブのJSON.parse()を使用し起動オーバーヘッドがゼロのため、VS Codeやコマンドラインのjqより高速な場合が多いです。プログラムで整形する場合は、JavaScriptでJSON.stringify(data, null, 2)を、コマンドラインでpython -m json.toolを使用してください。
JavaScriptコードからコピーするとJSONパースエラーになるのはなぜ?
最も一般的な原因は、JavaScriptオブジェクトリテラルが有効なJSONではないことです。3つの重要な違いがあります。(1) JavaScriptではシングルクォート('name')が使えますが、JSONではダブルクォート("name")が必要です。(2) JavaScriptではトレーリングカンマ({"a": 1,})が許可されますが、JSONでは不可です。(3) JavaScriptではクォートなしのキー({name: "Alice"})が使えますが、JSONではキーにクォートが必須です({"name": "Alice"})。さらに、JavaScriptのコメント(//や/* */)もJSONでは無効です。本ツールにデータを貼り付けると、エラーの種類と位置を正確に特定して素早い修正をサポートします。

Base64エンコーダー&デコーダー

エンコーディングとフォーマット

Base64のデコード・エンコードが無料でオンラインで行えます。リアルタイム変換、UTF-8・絵文字対応。100%ブラウザ上で動作しデータは外部に送信されません。登録不要。

進数変換ツール — 2進数・16進数・10進数・8進数

単位変換

無料オンライン進数変換ツール。2進数、8進数、10進数、16進数および任意の基数(2-36)間で数値を瞬時に変換。BigInt対応で桁数制限なし。登録不要・サーバー送信なし、すべての処理がブラウザ内で完結。コピーボタンやコードリテラル出力で開発作業を効率化。

画像圧縮ツール — JPEG・PNG・WebP を無料でオンライン圧縮

単位変換

無料オンライン画像圧縮ツール。JPEG、PNG、WebP 画像をブラウザ上で最大 80% 縮小。サーバーへのアップロード不要で完全プライベート。最大 20 枚の一括圧縮、品質調整、圧縮前後の比較機能を搭載。登録不要ですぐに使えます。

長さ単位変換ツール — メートル法・ヤードポンド法・天文単位対応

単位変換

1インチ = 2.54 cm、1フィート = 0.3048 m、1マイル = 1.609 km。メートル法・ヤードポンド法・海里・天文単位を含む16種類の長さ単位を即時変換。無料、ブラウザ完結、データ送信なし。

MD5ハッシュジェネレーター&ファイルチェックサムツール

セキュリティツール

無料オンラインMD5ハッシュ生成ツール。ブラウザ上でMD5・SHA-256・SHA-1・SHA-512のハッシュ値を即座に生成。テキストやファイルのチェックサム検証・比較、ワンクリックコピー対応。登録不要でデータはサーバーに送信されません。

ランダムパスワードジェネレーター

セキュリティツール

無料のオンラインランダムパスワード生成ツール。ブラウザ上で安全な強力パスワードを即座に自動生成できます。長さや文字種のカスタマイズ、最大50個の一括生成に対応。エントロピー分析付き強度メーター搭載。データはサーバーに送信されません。