JSON から JavaScript オブジェクトへの変換ツール
厳密な JSON は JSON.parse で JavaScript オブジェクトに変換できます。JavaScript オブジェクトリテラルは 、有効な JSON にするために事前のクリーンアップが必要です。
JavaScript で JSON を変換する
入力がすでに有効な JSON なら、最も安全なコンバータは JSON.parse(jsonText) です。コードを実行せずに、通常の JavaScript のオブジェクト・配列・文字列・数値・真偽値・null を返します。
JSON 入力
{ "name": "Ada", "active": true, "skills": ["math", "notes"] }
JavaScript での使い方
const user = JSON.parse(jsonText); console.log(user.name);
オブジェクトリテラル入力は別物
{ name: 'Ada', active: true } のような JavaScript オブジェクトリテラルは JSON ではありません。JSON.parse に通す前に、キーの無引用、シングルクォート、コメント、末尾カンマを修復してください。
eval を避けるべき場面
未知のテキストをオブジェクトにするために eval は使わないでください。eval はコードを実行します。JSON.parse はデータをパースするだけです —— だからこそ、API ペイロード、設定、ログ、貼り付けた例には厳格な JSON のほうが安全です。
エッジケース:日付・undefined・関数
JSON には Date、undefined、関数といった型がありません。日付は ISO 文字列で往復し、undefined は stringify で落ち、関数はそもそも表現できません。JavaScript オブジェクトにそれらが含まれていると、変換後の JSON は損失付きのスナップショットになります —— 必要なら JSON.parse の reviver 関数で型を明示的に復元してください。
TypeScript と型推論
JSON.parse は事前に形を知れないため 'any' を返します。型付きで扱いたいなら、zod や io-ts のようなスキーマ検証ライブラリで検証したうえで JSON.parse(text) as User と書くか、JSON to TypeScript ツールでサンプルからインターフェースを生成してください。
逆方向:オブジェクトから JSON
JSON.stringify(value, null, 2) は JavaScript の値から整形済みの JSON を作ります。undefined、関数、Symbol キーは黙って落とされ、循環参照は例外を投げます。第 2 引数に replacer 関数を渡すと、残すフィールドを制御できます —— 送信前に内部情報を取り除くのに便利です。
JSON 修復ガイド
トピックハブ
- JSON Parse Errors: Read the Message, Jump to the Fix
- Fix Invalid JSON: From 'What's Wrong' to a Clean File
- JSON Formatter, Validator, Viewer: Pick the Right Tool
- Repair LLM JSON Output: Handling Almost-JSON from AI
- Privacy: JSON Tools That Don't Leave Your Browser
- JSON Interop: YAML, CSV, XML, JWT, Schema
個別ガイド
- Base64 文字列のデコード方法(および JWT ペイロード)
- URL エンコーディング:クエリパラメータとパスをパーセントエンコードする
- YAML を JSON に変換(インデントエラーを避ける)
- JSON を CSV に変換:オブジェクト配列をフラット化
- JSON を XML に変換:ルート要素・属性・配列
- JSON を文字列リテラルとしてエスケープ(二重エンコードされた JSON のデコード)
- JSON の末尾カンマを修正
- JSON のシングルクォートを修正
- JSON の引用符なしキーを修正
- LLM が出力した JSON を修復する
- JSON 解析エラー「Expected Property Name」を修正
- JSON と JavaScript オブジェクトリテラルの違い
- API リクエスト前に JSON を検証する
- JSON フォーマッタ vs JSON Repair
- JSON の Unexpected Token エラーを修正