Google Apps Script のオブジェクトは全部GAS専用? 🤔
結論から言うと、「全部がGAS専用ではない」です。
🔹 GASの世界のオブジェクトは大きく2種類
① JavaScript標準で使えるもの
これは どこでも使える普通のJavaScriptの機能です。
例:
-
Math.random()
→ 乱数を作る -
Date
→ 日付オブジェクト -
Array
,String
,Object
→ 配列・文字列・基本オブジェクト -
for
,if
,let
→ 文法
👉 これらは ブラウザのJavaScript でも Node.js でも使えます。
② GAS専用で追加されたサービスオブジェクト
Googleが用意した「Googleのサービスにアクセスするための特別なオブジェクト」です。
例:
-
Logger
→ ログ出力(GAS専用) -
SpreadsheetApp
→ スプレッドシート操作 -
DocumentApp
→ Googleドキュメント操作 -
GmailApp
→ Gmail送信 -
DriveApp
→ Googleドライブ操作 -
UrlFetchApp
→ 外部API呼び出し
👉 これは GAS上でしか動きません。
ブラウザJSやNode.jsで書くと「未定義エラー」になります。
🔹 まとめ
-
共通のもの →
Math
,Date
, 配列, 文字列 など → どのJavaScript環境でも使える -
GAS専用のもの →
Logger
,SpreadsheetApp
,DriveApp
など → GASでしか使えない
つまり、GASのコードは
「JavaScriptの基本」+「Google専用サービス」 の組み合わせでできています。
🔹 よく使う主要オブジェクト早見表
初心者が最初に触る機会の多いオブジェクトを表にまとめました。
オブジェクト | 用途 | 代表的なメソッド例 |
---|---|---|
Logger |
ログ出力 | log() |
SpreadsheetApp |
スプレッドシート操作 |
getActiveSpreadsheet() / getActiveSheet()
|
DocumentApp |
Googleドキュメント操作 |
create() , getBody()
|
GmailApp |
Gmail送信 | sendEmail() |
DriveApp |
Googleドライブ操作 |
getFiles() , getFileById()
|
UrlFetchApp |
外部API呼び出し | fetch() |
PropertiesService |
スクリプトやユーザーの設定保存 |
getScriptProperties() , getUserProperties()
|
Session |
実行中ユーザー情報取得 | getActiveUser().getEmail() |
Utilities |
日付・エンコード・タイマー系 |
formatDate() , sleep()
|
🔹 まとめ(再)
- GASはJavaScriptベースなので、標準的なJSの文法やオブジェクトは共通。
- そこに Google専用のサービスオブジェクト が追加されている。
- 初心者はまず
Logger
とSpreadsheetApp
を覚えるとスムーズ。