JSON 簡介

JSON: JavaScript Object Notation(JavaScript オブジェクト記号法)。

JSONはデータの保存および交換のための文法です。

JSONはJavaScriptオブジェクト記法で書かれたテキストです。

データの交換

ブラウザとサーバー間でデータが交換される場合、データはテキストでなければなりません。

JSONはテキストであり、どんなJavaScriptオブジェクトもJSONに変換して、それをサーバーに送信できます。

サーバーから受信したJSONをJavaScriptオブジェクトに変換することもできます。

このようにして、データを複雑な解析や変換なしにJavaScriptオブジェクトとして処理できます。

データの送信

データがJavaScriptオブジェクトとして保存されている場合、そのオブジェクトをJSONに変換して、それをサーバーに送信できます。

var myObj = { name:"Bill Gates",  age:62, city:"Seattle" };
var myJSON =  JSON.stringify(myObj);
window.location = "demo_json.php?x=" + myJSON;

自分で試してみましょう

このチュートリアルの後の章で、さらに詳しく学ぶことができます JSON.stringify() 関数の知識。

データの受信

JSON形式でデータを受け信した場合、それをJavaScriptオブジェクトに変換できます:

var myJSON = '{ "name":"Bill Gates",  "age":62, "city":"Seattle" }';
var myObj =  JSON.parse(myJSON);
document.getElementById("demo").innerHTML = myObj.name;

自分で試してみましょう

このチュートリアルの後の章で、さらに詳しく学ぶことができます JSON.parse() 関数の知識。

データの保存

データを保存する際には、データが特定の形式でなければならず、どこに保存するかに関わらず、テキストは合法な形式の1つです。

JSONは、JavaScriptオブジェクトをテキストとして保存する可能性を提供します。

データをローカルストレージに保存します

//データの保存:
myObj = { name:"Bill Gates",  age:62, city:"Seattle" };
myJSON =  JSON.stringify(myObj);
localStorage.setItem("testJSON", myJSON);
//データの受信:
text = localStorage.getItem("testJSON");
obj =  JSON.parse(text);
document.getElementById("demo").innerHTML = obj.name;

自分で試してみましょう

JSON とは何ですか?

  • JSON は JavaScript オブジェクト記法(JavaScript Object Notation)
  • JSON は軽量なデータ交換フォーマットです
  • JSON は自己記述性があり、理解しやすいです
  • JSON は言語に依存しません*

*

JSON は JavaScript 语法を使用しますが、JSON フォーマットは純テキストです。

テキストはどのプログラミング言語でもデータとして読み取り、使用できます。

JSON フォーマットは最初に Douglas Crockford によって提案されました。

なぜ JSON を使用するべきですか?

JSON フォーマットはテキストに過ぎず、サーバーとブラウザ間で簡単に転送でき、どのプログラミング言語でもデータフォーマットとして使用できます。

JavaScript は JSON フォーマットで書かれた文字列をネイティブな JavaScript オブジェクトに変換する内蔵関数を提供します:

JSON.parse()

したがって、サーバーから JSON フォーマットでデータを受信した場合、それを他の JavaScript オブジェクトのように使用できます。