JSON How To


JSONの一般的な用途は、Webサーバからデータを読み出し、Webページにデータを表示することです。

簡単にするため、ファイルの代わりに入力として文字列を使用して説明します。


JSONの例 - 文字列からオブジェクト

JSON構文を持つ、JavaScript文字列を作成します:

var text = '{ "employees" : [' +
'{ "firstName":"John" , "lastName":"Doe" },' +
'{ "firstName":"Anna" , "lastName":"Smith" },' +
'{ "firstName":"Peter" , "lastName":"Jones" } ]}';

JSONの構文は、JavaScript構文のサブセットです。

JavaScriptの関数 JSON.parse(text) は、JSONテキストを、 JavaScriptオブジェクトに変換するために使用することができます:

var obj = JSON.parse(text);

ページに新しいJavaScriptオブジェクトを使用します:

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML =
obj.employees[1].firstName + " " + obj.employees[1].lastName;
</script>
Try it Yourself »

eval()の使用

JavaScript関数JSON.parse()をサポートしていない古いブラウザでは、 JSONテキストをJavaScriptオブジェクトに変換するために、eval()関数を使用することができます:

var obj = eval ("(" + text + ")");
Try it Yourself »

Note eval()関数は、あらゆるJavaScriptをコンパイルして実行することができます。 これは、潜在的にセキュリティの問題があることを表しています。これを避けるようにしてください

JSONテキストを、JavaScriptのオブジェクトに変換するには、JSONパーサを使用する方が安全です。

JSONのパーサは、JSONテキストのみを認識し、スクリプトをコンパイルしません。

ネイティブなJSONサポートを提供するブラウザでは、JSONのパーサも高速です。

全ての主要なブラウザ、および最新のECMAScript(JavaScript)標準には、 ネイティブなJSONサポートが含まれています:

Web ブラウザサポート
  • Firefox 3.5
  • Internet Explorer 8
  • Chrome
  • Opera 10
  • Safari 4

古いブラウザ用に、JavaScriptライブラリを https://github.com/douglascrockford/JSON-jsから入手できます

JSONフォーマットのオリジナルは、 Douglas Crockfordにより仕様決めが為されました