本記事ついて
本記事は プログラミング初学者の私が学習していく中でわからない単語や概要をなるべくわかりやすい様にまとめたものです。
もし誤りなどありましたらコメントにてお知らせいただけるとありがたいです。
JSONとは
JSONはデータをを表現するための記法の一種
アプリケーション間のデータのやり取りを行うために使用される文字列データのこと
*JSONのほかにCSV,XMLなどがあるが組み込みオブジェクトでは提供されていない。
GASではUtilities Service, XML Serviceで提供されている。
JSON形式は
JavaScriptのオブジェクトリテラル、配列リテラルを組み合わせた表現がベースになっている文字列データ
以下2点のルールを確認しておく
・プロパティ名はダブルクォーテーションで囲む
・文字列はダブルクォーテーションで囲む
JSONオブジェクトとは
JSON形式のデータは文字列なので、スクリプト内で個々の値を取り出すためには、オブジェクトに変換する必要がある。
JSONオブジェクトは、JSON形式の文字列とJavaScriptのオブジェクトを相互に変換する2つの静的メソッドを提供する。
*JSONオブジェクトはnew演算子でインスタンスを生成することはできない。
JSONオブジェクトのメンバー
分類 | メンバー | 戻り値 | 説明 |
---|---|---|---|
静的メソッド | JSON.parse(str) | Object | JSON形式の文字列strをオブジェクトに変換したものを返す |
静的メソッド | JSON.stringify(obj) | String | オブジェクトobjをJSON形式の文字列に変換したものを返す |
お試し(JSON.stringify)
function toshiki4() {
const obj = [
{name: '利樹', favorite: ["みかん", "仮面ライダー", "YouTude"]},
{name: 'パパ', favorite: ["肉", "ガンダム", "ゲーム"]},
{name: 'ママ', favorite: ["野菜", "ワンピース", "映画"]}
];
console.log(JSON.stringify(obj));
}
コンソールログを見るとすべてダブルクォーテーションになっています。
お試し(JSON.parse)
function toshiki4() {
let str = '[';
str += '{"name": "利樹", "favorite": ["みかん", "仮面ライダー", "YouTude"]},';
str += '{"name": "パパ", "favorite": ["肉", "ガンダム", "ゲーム"]},';
str += '{"name": "ママ", "favorite": ["野菜", "ワンピース", "映画"]}';
str += ']';
const persons = JSON.parse(str);
console.log(persons[0].name);
console.log(persons[1].favorite[2]);
const {name, favorite} = persons[2];
console.log(name, favorite);
}
このように外部からJSON形式の文字列を受け取ったらオブジェクト化をしてデータを取り出すのが基本の流れになる。