1. Javacript - JSON

2249 ワード

コードとデータを混ぜて保管するのはよくありません.
ファイル、データベース、バックエンド・サービスにデータを格納することが望ましい.
Webページクライアントとサーバの間でデータをどのように交換するかの通信規約をHTTP(Hypertext Transfer Protocol)と呼ぶ.このとき交換できるデータ型はXML,JSONなどである.
Webページ(クライアント)とサーバとの間で動的にデータを交換できる技術をAJAX(Asynchronous JavaScript and XML)といい、代表的なオブジェクトはブラウザが提供するXHR(XMLHttpRequest)である.ブラウザのXHRオブジェクトまたは最近ブラウザに追加されたfetch()APIを使用すると、ブラウザとサーバの間で簡単にデータを交換できます.ただしfetch()はまだWebブラウザで実行されていません.

XMLを使うと不要なタグが多くなり、読みやすさが悪くなりファイルサイズが大きくなるので、最近はJSONタイプのデータを多く交換しています.
JSON: JavaScript Object Notation
Object { key: value }
(プログラミング言語でもフレームワークでもJSONデータを作成できます!)
  • Serialize(Obj -> JSON str)
  • JSON.stringify(obj)
    let json = JSON.stringify({'apple', 'banana'});//["apple","banana"(JSON仕様:")
    **オブジェクトのSymbolまたは関数はJSONデータ型に変換されません
    JSONデータ型stringifyは、Objectの一部のみ使用可能です.
    let obj = {
    name: 'rabbit',
    color: 'pink',
    jump: () => {}
    }
    let json = JSON.stringify(obj, ['name', color']);
    JavaScriptオブジェクトをJSONデータ文字列として使用し、コールバック関数を各データループに対して呼び出すことができます.
    let json = JSON.stringify(obj, (key, value) => {
    console.log( key: ${key}, value: ${value} );
    });
  • deserialize(JSON str -> Obj)
  • JSON.parse(json)
    let obj = JSON.parse(json);
    JSON: JavaScript Object Notation
    JavaScriptオブジェクト{key:value}と同様にJSONにも{key:value}があります.だからJSONをJavaScript ObjectNotationと呼ぶ.
    次はdataフォルダのdataです.JSONファイルにはitemsという名前のオブジェクト({key:value}フォーマット)とitemオブジェクト({key:value}フォーマット)を含む配列の例が含まれています.
    {
        "items": [
            { 
            "type": "tshirt", 
            "gender": "female",
            "size": "large",
            "color": "pink",
            "Image": "../img/pink_t.png"
            },
            { 
            "type": "tshirt", 
            "gender": "female",
            "size": "large",
            "color": "pink",
            "Image": "../img/pink_t.png"
            },
        ]
    }