Google Apps Script

【GAS】オブジェクトやJSONデータから配列を作成する(Object.keys,values,entries)

こんにちは、もりです!

この記事では、GASの新しい実行環境V8ランタイムで使えるようになったJavaScriptの記述を紹介します。オブジェクトから配列を作成する方法です。

オブジェクトから配列を作るObjectクラスのメソッド

JavaScriptのObjectクラスのメソッドを使用します。

  • Object.keys(obj)
    → オブジェクトの「キー」を配列にして返す
  • Object.values(obj)
    → オブジェクトの「値」を配列にして返す
  • Object.entries(obj)
    → オブジェクトの「キーと値のペア」を配列にして返す【二次元配列】

サンプルコードです。

【おまけ】オブジェクトの中にオブジェクトがある場合

オブジェクトの中にオブジェクトがある場合の、各メソッドの実行結果です。

【おまけ】配列の中にオブジェクトがある場合

配列の中にオブジェクトがある場合の、各メソッドの実行結果です。

JSONデータを配列に変換してスプレッドシートに書き込む

entriesメソッドは、オブジェクトの「キーと値のペア」を配列にして返すことを確認しました。

entriesメソッドを使うと、API経由で取得した「JSONデータ」などのオブジェクトを、簡単にスプレッドシートに書き込むことができます。

郵便番号データ配信サービスのAPIを使ってJSONデータを取得してみます。

 

取得したJSONデータがこちら。

 

このJSONデータのresultsプロパティの先頭のオブジェクト[0]をスプレッドシートに書き込んでみます。この部分です。

 

コードがこちら。

 

スプレッドシートへの書き込み結果がこちらです。ループ処理などを使わずとも、JSONデータを簡単に書き出すことができましたね。

JSONデータをスプレッドシートに出力

 

以上、GASで、オブジェクトから配列を作成する方法を紹介しました。

【100万人以上が使う】タスク管理・プロジェクト管理ツール「Backlog」の新規無料トライアル

「Backlog」は日本製のタスク管理・プロジェクト管理ツールです。

国内利用者は100万人を超え、エンジニア・デザイナー以外にも、営業・人事・経理など、幅広い職種で大人気!

日本製なので、親しみやすく直感的に使えるのがポイントです。

タスク管理・プロジェクト管理にかかせない主な機能がこちら。

  • 課題(タスク)の作成
  • ファイル共有
  • wiki
  • ガントチャート
  • カンバンボード
  • テンプレート機能

法人・個人問わず利用できるので、効率的にタスク管理したいフリーランスの方にもオススメですよ!