JSON.stringify を使用する JSON フォーマットツール
単位変換器 ▲
単位変換器 ▼
From: | To: |
Find More Calculator☟
JSON(JavaScript Object Notation)は、人間が読み書きしやすく、マシンが解析や生成しやすい、軽量なデータ交換形式です。JavaScript のサブセットに基づいていますが、言語に依存せず、多くのプログラミング環境で使用できます。JavaScript の JSON.stringify
メソッドは、JavaScript オブジェクトまたは値を JSON 文字列に変換します。なお、置換関数を指定した場合には値を置換したり、置換配列を指定した場合には指定されたプロパティのみを含めることができます。
歴史的背景
JSON はもともと 2000 年代初頭にダグラス・クロックフォードによって、サーバーと Web アプリケーション間のデータ交換のための XML のよりシンプルな代替案として仕様化されました。設計目標は、最小、ポータブル、テキストベースで、かつ JavaScript のサブセットというものでした。それ以来、Web 上のデータ交換のための標準形式の 1 つになっています。
計算式
JSON のフォーマット化操作には「計算」の式はありませんが、JavaScript の JSON.stringify
関数を利用します:
JSON.stringify\(value\[, replacer\[, space\]\]\)
value
: JSON 文字列に変換する値replacer
: 文字列化プロセスの動作を変更する関数、または JSON 文字列に含める値オブジェクトのプロパティを選択/フィルタリングするためのホワイトリストとして機能する文字列と数値オブジェクトの配列space
: 入れ子構造のインデントを指定します。省略すると、テキストは余分な空白なしに詰められます。
数値の場合、空白として使用するスペース文字の数を指定します。文字列(例: \t
)の場合、空白として使用されます。
計算例
{ name: "John", age: 30 }
などのオブジェクトがあり、それを 2 スペースのインデントでフォーマットする場合は、入出力は次のようになります。
-
入力:
{ name: "John", age: 30 }
-
出力:
{ "name": "John", "age": 30 }
重要性と使用シナリオ
JSON.stringify
は以下に不可欠です:
- サーバーに送信するデータをシリアライズする
- ローカル ストレージまたはファイルにデータを可読な形式で格納する
- デバッグや表示目的で人間が読める JSON 文字列を生成する
よく寄せられる質問
-
JSON.stringify
は何をするのでしょうか?- JavaScript オブジェクトまたは値を JSON 形式の文字列に変換します。
-
JSON 文字列をインデント付きでフォーマットするにはどうすればよいですか?
JSON.stringify
の第 3 パラメータとして数値または文字列を渡し、インデントレベルまたはシーケンスを指定します。
-
JSON.stringify
が循環参照に遭遇したらどうなるのでしょうか?- JSON は循環参照を表すことができないため、エラーがスローされます。
-
JSON.stringify
は関数をシリアライズできますか?- いいえ、関数は有効な JSON データ型ではないため、省略されるか、置換関数を使用している場合は置換されます。
このツールは、JSON データを簡単に効率的にフォーマットし、見やすくデバッグしやすいようにします。