中学数学621573 views
小学理科717454 views
高校倫理1433840 views
中学社会667231 views
高校国語785873 views
いろは2988729 views
小学算数1195447 views
ヒストリア284663 views
Computer365450 views
高校日本史189916 views
Help
Tools

English

JSON.parse() の使い方

JSON.parse() は、JSON 形式の文字列を JavaScript のオブジェクトや配列に変換するメソッドです。サーバーから受け取った JSON データを扱う際に必須となります。

基本的な使い方

JSON.parse() に JSON 文字列を渡すと、対応する JavaScript の値が返されます。

const jsonString = '{"name": "田中", "age": 25}';
const obj = JSON.parse(jsonString);

console.log(obj.name); // "田中"
console.log(obj.age);  // 25

配列の JSON 文字列も同様にパースできます。

const jsonArray = '[1, 2, 3, 4, 5]';
const arr = JSON.parse(jsonArray);

console.log(arr[0]); // 1
console.log(arr.length); // 5

パースできる値

JSON.parse() は、オブジェクトや配列だけでなく、プリミティブ値もパースできます。

JSON.parse('"hello"');  // "hello"(文字列)
JSON.parse('123');      // 123(数値)
JSON.parse('true');     // true(真偽値)
JSON.parse('null');     // null

エラーハンドリング

不正な JSON 文字列を渡すと SyntaxError が発生します。実際のアプリケーションでは try-catch で囲むのが一般的です。

try {
  const data = JSON.parse('{ invalid json }');
} catch (e) {
  console.error('JSONのパースに失敗しました:', e.message);
}

よくあるエラーの原因

JSON のパースが失敗する主な原因を把握しておくと、デバッグがスムーズになります。

シングルクォートの使用

JSON ではダブルクォートのみ有効です。{'name': 'value'} はエラーになります。

末尾のカンマ

配列やオブジェクトの最後の要素の後にカンマがあるとエラーになります。[1, 2, 3,] は不正です。

// エラーになる例
JSON.parse("{'name': 'test'}");  // シングルクォート
JSON.parse('{"items": [1, 2,]}'); // 末尾カンマ
JSON.parse('{name: "test"}');    // キーがクォートなし

正しい JSON 形式を意識することで、パースエラーを防ぐことができます。