JSONの使用法
JSON テキストを JavaScript オブジェクトに変換する
JSON の最も一般的な使用法の 1 つは、Web サーバーから JSON データを (ファイルまたは HttpRequest として) 読み取り、JSON データを JavaScript オブジェクトに変換してから使用することです。 Web ページ内のデータです。
もっと簡単に説明すると、デモンストレーションの入力として (ファイルの代わりに) 文字列を使用します。
JSON インスタンス - 文字列からのオブジェクト
JSON 構文を含む JavaScript 文字列を作成します:
'{ "firstName":"John" , "lastName ":"ドエ" },' +
'{ "firstName":"Anna" , "lastName":"Smith" },' +
'{ "firstName":"Peter" , "lastName":"Jones" } ]}' ;
JSON 構文は JavaScript 構文のサブセットであるため、JavaScript 関数 eval() を使用して JSON テキストを JavaScript オブジェクトに変換できます。
eval() 関数は、JavaScript コンパイラーを使用して JSON テキストを解析し、JavaScript オブジェクトを生成します。構文エラーを避けるために、テキストは括弧で囲む必要があります:
Web ページでの JavaScript オブジェクトの使用:
例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文网(php.cn)</title> </head> <body> <h2>从 JSON 字符串中创建对象</h2> <p> 名: <span id="fname"></span><br> 姓: <span id="lname"></span><br> </p> <script> var txt = '{"employees":[' + '{"firstName":"John","lastName":"Doe" },' + '{"firstName":"Anna","lastName":"Smith" },' + '{"firstName":"Peter","lastName":"Jones" }]}'; var obj = eval ("(" + txt + ")"); document.getElementById("fname").innerHTML=obj.employees[1].firstName document.getElementById("lname").innerHTML=obj.employees[1].lastName </script> </body> </html>
サンプルの実行»
[サンプルの実行] ボタンをクリックしてオンラインサンプルを表示します
JSON パーサー
eval() 関数は、任意の JavaScript コードをコンパイルして実行できます。これにより、潜在的なセキュリティ問題が隠蔽されます。
JSON パーサーを使用して JSON を JavaScript オブジェクトに変換する方が安全です。 JSON パーサーは JSON テキストのみを理解し、スクリプトをコンパイルしません。
ブラウザでは、ネイティブ JSON サポートと高速な JSON パーサーが提供されます。
新しいブラウザーと最新の ECMAScript (JavaScript) 標準には、JSON のネイティブ サポートが含まれています。
Webブラウザのサポート | Webソフトウェアのサポート |
---|---|
|
|