JavaScript 目次 - ray88’s diary
JavaScript Jasonオブジェクト - ray88’s diary
■Jsonオブジェクト
・スクリプト内で個々の値を取り出すためにはJson形式は文字列のため、オブジェクトに変換する必要がある
・JsonオブジェクトはJson形式の文字列とJavaScriptオブジェクトを相互に変換する2つの静的メソッドを提供するもの
・Mathオブジェクトと同様、Jsonオブジェクトはnew演算子等でインスタンスを生成することはできない
■Jsonオブジェクトの主なメンバー
分類 |
メンバー |
戻り値 |
説明 |
---|---|---|---|
静的メソッド |
JSON.parse(str) |
Object |
JSON形式の文字列strをオブジェクトに変換したものを返す |
JSON.stringify(obj) |
String |
オブジェクトobjをJSON形式の文字列に変換したものを返す |
※以下のサンプルコードではプロパティ、文字列はダブルクオーテーションでくくられていないが、
変換後はダブルクォーテーションでくくられている
【サンプルコード】
function myFunction(){ const obj = [ {name:'Bob',favorate:["apple","curry","video game"]}, {name:'Tom',favorate:["orange","ramen","programming"]}, {name:'Jay',favorate:["grape","sushi","shogi"]} ]; //JavaScriptのオブジェクトをJSON形式の文字列に変換 console.log(JSON.stringify(obj)); }
■parseメソッド:Json形式の文字列をJavaScriptのオブジェクトに変換する
【サンプルコード】
function myFunction(){ let str = '['; str += '{"name":"Bob","favorate":["apple","curry","video game"]},'; str += '{"name":"Tom","favorate":["orange","ramen","programming"]},'; str += '{"name":"Jay","favorate":["grape","sushi","shogi"]}'; str += ']'; //JSON文字列をオブジェクト化 const obj = JSON.parse(str); //オブジェクトより各要素を取り出す console.log(obj[0].name);//Bob console.log(obj[1].favorate[2]);//programming //オブジェクトの分割代入で要素を取り出す const{name,favorate} = obj[2]; console.log(name,favorate);//Jay['grape','sushi','shogi'] }