{ }JSONKit.tools

JSON 圧縮ツール(オンライン minify)

JSON を有効な最小の形にまとめ、削減できたバイト数を正確に確認できます。読みやすい形に戻したいときは、整形ボタンがすぐ隣にあります。

インデント

入力

出力

入力を待っています…

このツールについて

圧縮はパーサーに不要なバイトをすべて取り除きます。インデント、改行、コロンやカンマの周りの空白です。データには手を触れないため、結果はまったく同じオブジェクトに解析されます。ただ通信路を軽く流れ、キャッシュやデータベースの列、HTML 属性の中で占める場所が小さくなるだけです。実行のたびに前後のサイズを表示するので、削減量は推測ではなく数字で分かります。

使い方

  1. 1小さくしたい JSON を入力パネルに貼り付けます。
  2. 2圧縮された結果がすぐに表示され、削減量がステータスバーに出ます。
  3. 3コピーで取得するか、整形に切り替えてインデント表示に戻します。

よくある質問

›JSON の圧縮では実際に何が取り除かれますか?

意味を持たない空白だけです。インデント、改行、コロンやカンマの後ろの空白です。キー、値、順序、型はまったく変わらないため、解析結果は同一になります。

›JSON はどれくらい小さくなりますか?

整形済みの文書ならおおむね 15〜40% です。入れ子が深いほど削れるインデントが増えます。このページは実行のたびに前後のサイズを表示します。

›サーバーで gzip を使っていても圧縮する意味はありますか?

効果は小さくなりますが確かにあります。gzip は繰り返される空白を非常によく圧縮するため、その上で minify してもたいていは数パーセントの削減です。効果が大きいのは、非圧縮で保存されるペイロード、HTML に埋め込まれる場合、WebSocket で送る場合です。

›整形済みの状態に戻せますか?

はい。圧縮はデータの面では可逆なので、整形を押せば同じ文書が再びインデントされます。取り除かれたのは空白だけです。

›コマンドラインで JSON を圧縮するには?

jq なら: jq -c . data.json — -c フラグでコンパクトに出力されます。Node なら JSON.stringify(JSON.parse(input)) が同じことをします。