JavaScriptのオブジェクトリテラルを正しいJSONに直す
コンソール出力・fixture・設定スニペットはキーを一部だけクォートし、シングルクォートを使います。厳格なJSONパーサは全て拒否します — 正しく書き直します。
このガイドで使う道具
やりたいこと
console.logから{a: 1, b: 'x'}をコピーしたらJSON.parseが拒否しました。クォートなしキー・シングルクォート・末尾カンマ・undefinedは全て合法なJavaScriptで全て違法なJSONです — 手で直すとミスが混ざります。
リテラルを貼る
オブジェクトまたは配列リテラルを貼ります。クォートなしキー・シングルクォート・コメント・末尾カンマ・.5や0x1Fのような数値形式をパースできます。出力は厳格なダブルクォートの整形JSONです。
- undefinedの項目はJSON.stringifyと同じく除外されます。
- NaNとInfinityにはJSON表現がないため、推測せずエラーとして報告します。
評価器ではない
入力はリテラルとしてパースされ実行されません — 関数・スプレッド構文・変数・計算キーは拒否されます。これは意図的です。コードを貼っても何も実行されません。上限は1,000,000文字です。