JSONチュートリアル:簡単な例で学ぶ

⚡ スマートサマリー

JSONは、 JavaScript Object Notation(SON)は、サーバーとアプリケーション間で構造化データを保存および交換するための、軽量で人間が���みやすいフォーマットです。この資料では、SONの構文、データ型、実際のアプリケーション、およびXMLとの違いについて説明します。

  • 🔑 コア定義: JSONは、オブジェクトには波括弧、配列には角括弧を使用し、情報を名前と値のペアおよび順序付き配列として格納します。
  • 🧩 サポートされているデータ型: JSONの6つのデータ型(文字列、数値、ブール値、null、オブジェクト、配列)を習得すれば、ほぼあらゆる構造をモデル化できるようになります。
  • チームが採用する理由: JSONをネイティブに解析 Javaこのスクリプトは、すべてのブラウザで動作し、ほとんどのバックエンド技術およびREST APIと統合できます。
  • 🔄 JSONとXMLの比較: XMLと比較すると、JSONは型付けされており、人間が読みやすく、シリアル化も高速ですが、マークアップ表示機能は備えていません。
  • 🛠️ 実用的なツール: デプロイ前に、JSONLint、JSON Editor Online、JSON Formatterなどのユーティリティを使用して、コードの検証、フォーマット、および圧縮を行ってください。

JSONチュートリアル

JSONとは何ですか?

JSONの 情報を整理して簡単にアクセスできるように保存するために使用されるファイル形式です。完全な形式は次のとおりです。 Javaスクリプトオブジェクト表記法。論理的にアクセスできる、人間が読めるデータのコレクションを提供します。記述されたプログラミングコードのファイル名拡張子は .json。 JSON のインターネット メディア タイプは application/json で、その統一タイプ識別子は public.json です。

定義が明確になったところで、次のセクションでは、開発者が他のデータ形式ではなくJSONを選択する理由を説明します。

JSON を使用する理由

JSON を使用することの重要な利点/長所は次のとおりです。

  • すべてのブラウザのサポートを提供する
  • 読み書きが簡単
  • 単純な構文
  • ネイティブに解析できる Javaeval() 関数を使用したスクリプト
  • 作成と操作が簡単
  • すべての主要企業でサポート Javaスクリプトフレームワーク
  • ほとんどのバックエンドテクノロジーでサポートされています
  • JSONはネイティブに認識されます Javaスクリプト
  • それはあなたがすることができます transmit ネットワーク接続を使用して構造化データをシリアル化する。
  • 最新のプログラミング言語で使用できます。
  • JSONは、任意のオブジェクトに変換できるテキストです。 JavaJSON にスクリプト化し、この JSON をサーバーに送信します。

JSONの歴史

JSONの歴史
JSONチュートリアル

JSON の歴史を形成する重要なランドマークを以下に示します。

  • Douglas Crockford は 2000 年代初頭に JSON 形式を指定しました。
  • 公式ウェブサイトは2002年に開設されました。
  • 2005 年 XNUMX 月、Yahoo! は、一部の Web サービスを JSON で提供し始めます。
  • JSON は 2013 年に ECMA 国際標準になりました。
  • 最新の JSON 形式標準は 2017 年に公開されました。

この時間軸を超えて、JSONは長年にわたり人気を保ち続けている理由を説明する、一連の実用的な機能も備えている。

JSONの特徴

簡単に使える – JSON API は、一般的に使用されるユースケースを簡素化���るのに役立つ高レベルのファサードを提供します。

パフォーマンス – JSON はメモリ消費量が非常に少ないため非常に高速であり、大規模なオブジェクト グラフやシステムに特に適しています。

無料ツール – JSON ライブラリはオープンソースであり、無料で使用できます。

地図を作成する必要はありませんping – Jackson API はデフォルトのマップを提供しますping シリアル化されるオブジェクトが多数ある場合。

クリーンな JSON – 読みやすい、クリーンで互換性のある JSON 結果を作成します。

依存関係 – JSON ライブラリの処理には他のライブラリは必要ありません。

JSON 構文のルール

JSON 構文のルールは次のとおりです。

  • データは名前と値のペアである必要があります
  • データはカンマで区切る必要があります
  • 中括弧はオブジェクトを保持する必要があります
  • 角括弧は配列を保持する

JSON のデータ型

構文規則が確立されたので、次の表にJSONで使用される重要なデータ型を示します。

Data Type 詳細説明
実数、整数、または浮動小数点数が含まれます
String バックスラッシュでエスケープされた任意のテキストまたはUnicodeの二重引用符で構成されます
ブーリアン ブール値データ型は、True または False の値を表します。
ヌル Null 値は、関連付けられた変数に値がないことを示します
オブジェクト これはキーと値のペアのコレクションであり、常にコンマで区切られ、中括弧で囲まれます。
配列 これは、順序付けられた値が分離されたシーケンスです。

  • 数値は実装方法に依存する倍精度浮動小数点形式です。
  • JSON では、XNUMX 進形式と XNUMX 進形式は使用できません。

次の表に数値の種類を示します。

タイプ 詳細説明
整数 1~9、0 の数字。正の数と負の数の両方。
分数 3のような分数
Exponent e、e+ のような指数

構文:

var json-object-name = { string : number_value,......}

例:

var obj = {salary: 2600}

String

これは、二重引用符で囲まれた一連のUnicode文字とバックスラッシュエスケープです。ping.

次の表は、さまざまな文字列タイプを示しています。

タイプ 詳細説明
* 二重引用符に使用しますping
/ ソリダスに使用
\ 逆立体線に使用
B バックスペースを追加するために使用します
F フィードから
N 新しい行を作成するには
R キャリッジリターンに使用
T 水平タブを表示するには
U XNUMX進数

構文:

var json-object-name = { string : "string value",…..}

例:

var obj = {name: 'Andy'}

ブーリアン

true または false の値のみが保存されます。

構文:

var json-object-name = {string : true/false, …..}

例:

var obj = {active: 'true'}

配列

  • これは、順序付けられた値のコレクションです。
  • キー名が連続する整数の場合は、配列を使用する必要があります。
  • 角括弧で囲み、',' (カンマ) で区切る必要があります。

構文:

[value, .......]

例:

複数のオブジェクトを格納する配列を表示します。

{
   "eBooks":[
      {
         "language":"Pascal",
         "edition":"third"
      },
      {
         "language":"Python",
         "edition":"four"
      },
      {
         "language":"SQL",
         "edition":"second"
      }
   ]
}

JSONオブジェクト

A JSONオブジェクト 中括弧で囲まれた JSON のエンティティです。名前と値のペアの順序なしセットで記述され、名前の後には「:」(コロン) が続き、名前と値のペアは「,」(カンマ) で区切る必要があります。キー名が任意の文字列の場合に使用できます。

構文:

{ string :  value, ….. }

例:

{
"id": 110,
"language": "Python",
"price": 1900,
}

空白

トークンのペアの間に空白を挿入できます。

例:

構文:

{string:"    ",….}

例:

var a = " Alex"; var b = "Steve";

JSONの例

指定されたコード例では、JSON を使用して次の情報に関連する情報を保存する方法を定義しています。 プログラミングの本 版と著者名も一緒に。

{
   "book":[
      {
         "id":"444",
         "language":"C",
         "edition":"First",
         "author":"Dennis Ritchie "
      },
      {
         "id":"555",
         "language":"C++",
         "edition":"second",
         "author":" Bjarne Stroustrup "
      }
   ]
}

別の JSON ファイルの例で JSON 形式を理解しましょう。 ここで、JSON は学生の名、姓、ID を定義します。

{
  "student": [

     {
        "id":"01",
        "name": "Tom",
        "lastname": "Price"
     },

     {
        "id":"02",
        "name": "Nick",
        "lastname": "Thameson"
     }
  ]
}

JSONの応用

JSON の一般的なアプリケーションをいくつか示します。

  • サーバーからのデータ転送に役立ちます
  • サンプルJSONファイル形式は、 transmit そして、あらゆる種類の構造化データをシリアル化する。
  • ページを更新せずに非同期データ呼び出しを実行できます
  • あなたがするのに役立ちます transmit サーバーとWebアプリケーション間のデータ。
  • 広く使用されている用途 Javaブラウザ拡張機能と Web サイトを含むスクリプトベースのアプリケーション。
  • また、ご購読はいつでも停止することが可能です transmit サーバーとWebアプリケーション間のデータ転送にはJSONが使用されます。
  • 最新のプログラミング言語で JSON を使用できます。
  • 書くのに使われる Javaブラウザのアドオンを含むスクリプトベースのアプリケーション。
  • Web サービスと Restful API は、JSON 形式を使用して公開データを取得します。

JSONは非常に広く利用されているため、しばしばXMLと比較されるが、XMLはJSONが置き換えることが多いフォーマットである。

JSON と XML の比較

JSON と XML の主な違いは次のとおりです。

JSONの XML
JSON オブジェクトには型があります XML データは型なしです
JSON タイプ: 文字列、数値、配列、ブール値 すべての XML データは文字列である必要があります
データは JSON オブジェクトとして簡単にアクセスできます XML データを解析する必要があります。
JSON ファイルは人間にとってより読みやすいです。 XML ファイルは人間にとって判読しにくいです。
JSON はほとんどのブラウザでサポートされています。 クロスブラウザーでの XML 解析は難しい場合がある
JSON には表示機能がありません。 XML はマークアップ言語であるため、データを表示する機能を提供します。
値の取得は簡単です 値の取得が難しい
多くの Ajax ツールキットでサポートされています Ajax ツールキットでは完全にはサポートされていません
完全に自動化された逆シリアル化/シリアル化の方法 Java脚本。 開発者は書く必要がある JavaXML からシリアル化/デシリアル化するためのスクリプト コード
オブジェクトのネイティブ サポート。 オブジェクトは規約に従って表現する必要がありますが、属性や要素の使用がほとんど省略されています。

JSONの例

以下は簡単な JSON の例です。

{
  "student": [

     {
        "id":"01",
        "name": "Tom",
        "lastname": "Price"
     },

     {
        "id":"02",
        "name": "Nick",
        "lastname": "Thameson"
     }
  ]
}

XMLの例

<?xml version="1.0" encoding="UTF-8" ?>
<root>
	<student>
		<id>01</id>
		<name>Tom</name>
		<lastname>Price</lastname>
	</student>
	<student>
		<id>02</id>
		<name>Nick</name>
		<lastname>Thameson</lastname>
	</student>
</root>

JSON ではないものは何ですか?

  • サンプル JSON データ ファイルはドキュメント形式ではありません。
  • マークアップ言語ではありません。
  • JSON は一般的なシリアル化形式を提供しません。
  • それは反復的または循環的な構造ではありません。
  • また、目に見えない構造物でもありません。

JSONの欠点

JSON には次のような利点があります。

  • 名前空間がサポートされていないため、拡張性が低い
  • 限定的 開発ツール 対応
  • 正式な文法定義はサポートされていません

人気の JSON ツール (アドオン)

重要な JSON ツールは次のとおりです。

JSONLint:

JSONLintは、JSONのバリデーターおよびリフォーマッターとして使用されるオープンソースプロジェクトです。軽量なデータ交換フォーマットです。コピー&ペースト、直接入力、または入力 URL JSONバリデータツールを使用して、JSONコードを検証します。

リンク: https://jsonlint.com

JSON エディター オンライン:

JSON Editor Online は、便利な Web ベースのツールです。 JSON を編集、表示、フォーマットすることができます。 データを並べて明確に編集可能に表示します。 コード��ディターソフトウェア.

リンク: https://jsoneditoronline.org/

JSON ミニファイア ツール:

これは、空白を削除し、スペースを最小限に抑える JSON コードを提供するのに役立つツールです。

リンク: https://www.browserling.com/tools/json-minify

JSON から XML へのコンバーター:

JSON から XML へのコンバーターは、JSON コードの変換に役立つシンプルで効果的なツールです。

リンク: https://codebeautify.org/jsontoxml

JSON フォーマッタ:

JSON フォーマッタは、人間が読みやすくデバッグしやすいように JSON データをフォーマットすることで問題を解決するのに役立ちます。

リンク: https://jsonformatter.curiousconcept.com/

よくあるご質問

いいえ。JSONはデータ交換フォーマットであり、プログラミング言語ではありません。テキストベースの構文を使用して構造化データを保存および転送するだけです。プログラミング言語には、 Javaスクリプト、 Python, Java JSONの読み書きが可能です。

JSON自体はプレーンテキストであり安全です。リスクは、特に古いeval()メソッドを使用した場合など、信頼できない入力を解析する際に発生します。JSON.parse()などの標準的なJSONパーサーを使用し、データを検証してインジェクション攻撃を回避してください。

JSONは、保存に使用されるテキスト形式であり、 transmit データ。JSONオブジェクトは、そのフォーマット内の構造体の一つであり、中括弧で囲まれた名前と値のペアとして記述されます。完全なJSONファイルには、多数のオブジェクトと配列が含まれる場合があります。

AIシステムは、プロンプトの送信、応答の受信、モデルパラメータの交換にJSONを使用します。ほとんどの大規模言語モデルAPIはJSONを受け入れ、JSONを返すため、JSONはリクエスト、構造化出力、トレーニングデータ構成の標準フォーマットとなっています。

はい。AIアシスタントは、プレーンテキストの説明からJSONを生成し、構文エラーをチェックできます。多くのツールはスキーマを強制的に適用するため、出力は有効性を保ち、アプリケーションが期待する構造と一致します。