JavaScript JSON parse() メソッド

定義と使用法

JSON.parse()メソッドは文字列を解析し、JavaScriptオブジェクトを返します。

この文字列はJSON形式で書かれている必要があります。

JSON.parse()メソッドは、結果を変換するための関数を使用することができます。

例 1

JSON形式で書かれた文字列を解析し、JavaScriptオブジェクトを返します:

var obj = JSON.parse('{"firstName":"Bill", "lastName":"Gates"}');

自分で試してみてください

例2

reviver関数の使用方法:

/* "city"の値を大文字に変更:*/
var text = '{ "name":"Bill", "age":"19", "city":"Seattle"}';
var obj = JSON.parse(text, function (key, value) {
  if (key == "city") {
    return value.toUpperCase();
  } else {
    return value;
  }
});
document.getElementById("demo").innerHTML = obj.name + ", " + obj.city;

自分で試してみてください

例3

サーバーから受信したJSONを解析します:

var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
  if (this.readyState == 4 && this.status == 200) {
    var myObj = JSON.parse(this.responseText);
    document.getElementById("demo").innerHTML = myObj.name;
  }
};
xmlhttp.open("GET", "json_demo.txt", true);
xmlhttp.send();

自分で試してみてください

json_demo.txtを確認してください

文法

JSON.parse(string, function)

引数の値

引数 説明
string 必須。JSON形式で書かれた文字列。
reviver関数

オプション。変換結果を処理する関数。各項目にこの関数を呼び出します。ネストされたオブジェクトは親オブジェクトの前に変換されます。

この関数が有効な値を返した場合、項目の値を変換された値に置き換えます。

この関数がundefinedを返した場合、この項目を削除します。

技術的詳細

返り値: JSONオブジェクト、または数値。
JavaScriptバージョン: ECMAScript 5

ブラウザのサポート

このテーブルの数字は、そのメソッドを完全にサポートする最初のブラウザのバージョンを示しています。

メソッド Chrome IE Firefox Safari Opera
parse() 4.0 8.0 3.5 4.0 11.5

関連ページ

JSON 教程:JSON 簡介