mozilla

Revision 14096 of ネイティブ JSON を使う

  • Revision slug: Using_native_JSON
  • Revision title: ネイティブ JSON を使う
  • Revision id: 14096
  • Created:
  • Creator: RobinEgg
  • Is current revision? No
  • Comment 155 words added, 3 words removed

Revision Content

ネイティブ JSON を使う

{{ gecko_minversion_header("1.9.1") }}

この文書では、 Gecko 1.9.1 で追加された ECMAScript 5 互換のネイティブ JSON オブジェクトについて説明します。以前のバージョンの Firefox で JSON を扱う際の基本的な情報については、JSON のページをご覧下さい。

ネイティブ JSON オブジェクトは二種類の重要なメソッドを保持しています。 JSON.parse() メソッドは JSON 文字列をパースし、 JavaScript のオブジェクトに変換します。JSON.stringify() メソッドは、 JavaScript オブジェクトを JSON の型に変換します。

注意: JSON オブジェクトはメソッドを持つオブジェクトの変換には対応していません。そのようなオブジェクトを JSON 型に変換しようとすると、TypeError 例外が起こります。

JSON 文字列のパース

JSON 文字列を JavaScript オブジェクトに変換するには、以下の例のように JSON 文字列を単純に JSON.parse() に通すだけで済みます。

var jsObject = JSON.parse(jsonString);

オブジェクトを JSON に変換

JavaScript オブジェクトを JSON 文字列に変換するには、オブジェクトをJSON.stringify() メソッドに通します:

var foo = {};
foo.bar = "new property";
foo.baz = 3;

var jsObject = JSON.stringify(foo);

jsObject{"bar":"new property","baz":3} と変換されます。

参考文献

 

Revision Source

<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: 'MS PGothic'; font-size: 16px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;">
<div style="background-color: rgb(255, 255, 255); font-family: Verdana,Tahoma,sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: 1.7; font-size-adjust: none; font-stretch: normal; -x-system-font: none; color: rgb(37, 34, 29);">
<h1>ネイティブ JSON を使う</h1>
<p style="margin: 0px 0px 1.7em; padding: 0px;">{{ gecko_minversion_header("1.9.1") }}</p>
<p style="margin: 0px 0px 1.7em; padding: 0px;">この文書では、 Gecko 1.9.1 で追加された ECMAScript 5 互換のネイティブ JSON オブジェクトについて説明します。以前のバージョンの Firefox で JSON を扱う際の基本的な情報については、<a class="internal" href="/Ja/JSON" style="text-decoration: none; color: rgb(4, 137, 183) ! important; cursor: default;" title="Ja/JSON">JSON</a> のページをご覧下さい。</p>
<p style="margin: 0px 0px 1.7em; padding: 0px;">ネイティブ JSON オブジェクトは二種類の重要なメソッドを保持しています。 <code style="color: rgb(37, 34, 29); font-weight: inherit;">JSON.parse()</code> メソッドは JSON 文字列をパースし、 JavaScript のオブジェクトに変換します。<code style="color: rgb(37, 34, 29); font-weight: inherit;">JSON.stringify()</code> メソッドは、 JavaScript オブジェクトを JSON の型に変換します。</p>
<div class="note"><strong>注意:</strong><span class="Apple-converted-space"> </span>JSON オブジェクトはメソッドを持つオブジェクトの変換には対応していません。そのようなオブジェクトを JSON 型に変換しようとすると、<code style="color: rgb(37, 34, 29); font-weight: inherit;">TypeError</code><span class="Apple-converted-space"> 例外が起こります。</span></div>
<h2>JSON 文字列のパース</h2>
<p style="margin: 0px 0px 1.7em; padding: 0px;">JSON 文字列を JavaScript オブジェクトに変換するには、以下の例のように JSON 文字列を単純に <code style="color: rgb(37, 34, 29); font-weight: inherit;">JSON.parse()</code> に通すだけで済みます。</p>
<pre style="border: 1px solid rgb(223, 236, 241); margin: 0px 0px 1.7em; padding: 10px; overflow: auto; font-family: 'Courier New','Andale Mono',monospace; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; color: rgb(37, 34, 29);">var jsObject = JSON.parse(jsonString);</pre>
<h2>オブジェクトを JSON に変換</h2>
<p style="margin: 0px 0px 1.7em; padding: 0px;">JavaScript オブジェクトを JSON 文字列に変換するには、オブジェクトを<code style="color: rgb(37, 34, 29); font-weight: inherit;">JSON.stringify()</code> メソッドに通します:</p>
<pre class="eval" style="border: 1px solid rgb(223, 236, 241); margin: 0px 0px 1.7em; padding: 10px; overflow: auto; font-family: 'Courier New','Andale Mono',monospace; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; color: rgb(37, 34, 29);">var foo = {};
foo.bar = "new property";
foo.baz = 3;

var jsObject = JSON.stringify(foo);
</pre>
<p style="margin: 0px 0px 1.7em; padding: 0px;"><code style="color: rgb(37, 34, 29); font-weight: inherit;">jsObject</code>は<code style="color: rgb(37, 34, 29); font-weight: inherit;">{"bar":"new property","baz":3}</code> と変換されます。</p>
<h2>参考文献</h2>
<ul style="margin: 0px 0px 1.7em 25px; padding: 0px;"> <li style="margin-bottom: 0.25em;"><a class="internal" href="/Ja/JavaScript/ECMAScript_5_support_in_Mozilla" style="text-decoration: none; color: rgb(4, 137, 183) ! important; cursor: default;" title="Ja/JavaScript/ECMAScript 5 support in Mozilla">ECMAScript 5 support in Mozilla</a></li> <li style="margin-bottom: 0.25em;"><a class="internal" href="/Ja/JSON" style="text-decoration: none; color: rgb(4, 137, 183) ! important; cursor: default;" title="Ja/JSON">JSON</a></li>
</ul>
<p style="margin: 0px 0px 1.7em; padding: 0px;"> </p>
</div>
</span>
Revert to this revision