入力

ソート結果

JSONソートとは?

JSONオブジェクトのキーは仕様で順序が定義されていません。パーサーやランタイムは任意の順序で返すことができます。キーをアルファベット順にソートすると、git diff、ハッシュ生成、テスト用の再現可能な出力が得られます。RFC 8259で形式を確認してください。

このツールはJSONオブジェクトのキーを再帰的にソートします。ネストされたオブジェクトのキーもソートされます。配列はそのまま、オブジェクトのキーのみが並べ替えられます。処理はブラウザで実行されます。

使い方

1

JSONを貼り付け

左のエディタにJSONを貼り付けるか、ファイルをアップロードしてください。サンプルデータにはサンプルを使用してください。ツールは任意の有効なJSONを受け付けます。

2

ソート結果を表示

右パネルにキーがアルファベット順にソートされた同じJSONが表示されます。ネストされたオブジェクトは再帰的にソートされます。無効なJSONはエラーを表示します。

3

コピーまたはダウンロード

結果を取得するには<strong>コピー</strong>または<strong>ダウンロード</strong>を使用してください。ソートせずにフォーマットするにはJSONフォーマッターを、圧縮するにはJSONミニファイアーを使用してください。

JSONソートの例

JSONオブジェクトのキーをアルファベット順にソートする例です。ネストされたオブジェクトは再帰的にソートされます。

例:キーが未ソートの加入者レコード

入力(キーは任意の順序):

入力

ソート結果:

ソート結果

キー順序が重要な場合

キーがソートされているとgit diffがきれいになります:変更が目立ち、並べ替えられた行に埋もれません。一部のシステムはハッシュや署名にJSON文字列化を使用します。ソートされたキーで出力が決定的になります。JavaScriptではJSON.stringifyはキー順序を保証しません。このツールは入力順序に関係なく一貫した出力を提供します。

よくある質問

配列要素はソートされますか?

いいえ。オブジェクトのキーのみがソートされます。配列の順序は保持されます。配列要素をソートするとデータが変わります。このツールはオブジェクト内のキーのみを並べ替えます。

ソートは大文字小文字を区別しますか?

通常はい。キーはアルファベット順にソートされるため、「planId」と「PlanId」は異なる位置になります。ツールの動作は出力で確認してください。

データは送信されますか?

いいえ。ソートはブラウザで実行されます。

これはデータを変更しますか?

いいえ。キーの順序のみが変わります。値と構造は同じです。結果は意味的に同一のJSONです。

カスタム順序でソートできますか?

このツールはデフォルトでアルファベット順にソートします。カスタム順序には、コードでJSONを処理するか別のツールを使用する必要があります。

関連ツール

JSON構文についてはRFC 8259MDNを参照してください。json.orgのJSON仕様で形式が定義されています。コマンドライン処理にはjqがソートをサポートしています。Git diffはソートされたキーで比較がきれいになります。JSON.stringify()Lodash sortByPostmanも参照してください。