Command Palette

Search for a command to run...

JS

JSON フラットナー

ネストされた JSON を単一レベルのドット記法キーにフラット化するか、フラット化されていない点線キーをネストされたオブジェクトと配列に戻します。往復ロスレス。 100% クライアント側。

JSON Flattenerとは何ですか?

JSON フラットナーは、ネストされた JSON オブジェクトを、各値へのフルパスをキーとする単一レベルのオブジェクトに変換するため、 {"user": {"city": "Austin"}} は {"user.city": "Austin"} と同じようにフラット化し、インデックスをパスセグメントとして使用します: {"roles": ["admin", "editor"]} は {"roles.0": "admin", "roles.1": "editor"} になります。その結果、ネストが残っていないリーフ値へのパスのフラットマップが得られます。

フラット化とは、深くネストされた API 応答を取得し、ファイルをフラットなキーと値のペアのみを理解する形式に構成する方法です。スプレッドシートの列、環境変数、点線の i18n メッセージ キー、機能フラグ ストア、および多くのロギングおよび分析パイプラインはすべて 1 レベルのキーを期待しており、user.address.city などの点線のパスは、元の構造をそれらに伝送する標準的な方法です。逆操作、フラット化解除は、それらの点線のキーからネストされたオブジェクトとその配列を再構築するため、変換は両方向のロスレス往復になります。

このツールは完全にブラウザで実行されます。 JSON を解析し、リーフ値にウォークし、サーバーに何も送信せずにフラットまたはネストされた結果をシリアル化します。アップロード、ログ記録、保存されるものは何もなく、マシン上にトークン、ID、または個人データを含むペイロードが保持され、ページがロードされるとツールはオフラインで動作し続けます。

スプレッドシート、フォームエンコーダー、環境変数が運ぶことができる形状の取引構造をフラット化すると、往復は両方向でロスレスになります。ただし、キーに区切り文字がまだ含まれていないことが 1 つ当てはまります。ドットでフラット化された「user.name」という名前のキーは、ネストされたオブジェクトと区別できず、フラット化を解除すると、区切り文字が 1 つになります。データがリスクがある場合にデータが使用しないものに変更します。配列インデックスは数値パス セグメントになるため、items.0.id は最初の要素に対応し、フラット化解除者は、数値キーが配列を意味するのか、数値キーを持つオブジェクトを意味するのかを決定する必要があります。数値キーを失うと、構成ファイルの意味が変わるため、空のオブジェクトと空の配列はドロップされるのではなく、明示的に保存されます。

JSON Flattenerの使い方は?

  1. 平らにするか、または平らでないかを選択します

    Flatten はネストされた JSON を点線のキーに変えます。 unflatten は、点線のキーからネストされたオブジェクトと配列を再構築します。サンプルをロードして両方向を表示します。

  2. json を貼り付けます

    ネストしたオブジェクトをフラットに貼り付けるか、点線のキーを持つフラットなオブジェクトをフラットに解除します。入力は有効な JSON である必要があります。解析エラーは正確な位置で報告されます。

  3. キースタイルを設定します

    区切り文字 (通常はドット) を選択し、配列インデックスのドット (roles.0) またはブラケット (roles[0]) 表記を選択します。往復が一致するように、両方向に対して同じ設定を維持します。

  4. 結果をコピーまたはダウンロードする

    アクションボタンを押してから、出力をクリップボードにコピーするか、.jsonファイルとしてダウンロードします。キーカウントにより、葉が何枚生成されたかが確認されます。

主な機能

  • 損失のない平らで平らではありません

    ネストされたオブジェクトをフラット化し、その結果をフラット化解除すると、配列、null、booleans、空のコンテナを含む元のオブジェクトが返されます。 2 つの操作は正確な逆数です。

  • 配列認識パス

    配列項目はインデックスをパスに保持するため、order はラウンドトリップ後も存続します。 dot 表記 (items.0.id) または bracket 表記 (items[0].id) を選択して、フィードするシステムに一致させます。

  • 設定可能な区切り文字

    デフォルトでドットを使用するか、ターゲット キーにすでにドットが含まれている場合は別の区切り文字に切り替えます。同じ区切り文字でフラット化とフラット化解除の両方が駆動されます。

  • 空になったコンテナが保存されています

    空のオブジェクトまたは空の配列はサイレントにドロップされるのではなく、リーフ値として保持されるため、空のリストに依存する構成は依然として正しくラウンドトリップします。

Frequently Asked Questions

JSON をフラット化すると、ネストされたオブジェクトが、キーが各値へのパスである単一レベルのオブジェクトに変換されます。 nested {"user":{"city":"Austin"}} は、flat {"user.city":"Austin"} になります。すべてのリーフ値は 1 つの点付きキーを取得し、出力にはネストは残りません。

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!

json flattenerflatten jsonflatten nested jsonunflatten jsonjson dot notationjson to flatnested json to flatjson path keysflatten json object