
Google Apps ScriptでES6が使用できる
いままではGoogle Apps Script(以下GAS)でES6のアロー関数やlet, constなどは実行するとエラーとなり使用不可となっていた。
const add = (a, b) => a + b Logger.log(add(1, 2))
これはGASはES5(JavaScript 1.6)がベースとなっていることが原因でアロー関数だけではなく、let, const, class, テンプレートリテラルなども使用できない。
そのため、いままではGASをES6で書きたい場合はBabelやclaspなどを使用してES5にコンパイル必要があった。
しかし、2020年2月から表示メニューの「マニフェストファイルを表示」からappsscript.jsonを表示して"runtimeVersion": "V8"を追記すればV8 runtime(ES6)を有効にすることができるようになった。※
※ 追記: 2021年現在はappsscript.jsonの設定なしでES6が使用可能
V8 runtime(ES6)を有効にする方法
1. 表示メニューの「マニフェストファイルを表示」からappsscript.jsonを表示する。
2. appsscript.jsonに"runtimeVersion": "V8"を追記して保存する。
{
"timeZone": "Asia/Tokyo",
"dependencies": {
},
"exceptionLogging": "STACKDRIVER",
"runtimeVersion": "V8"
}
以上の手順だけでES6を使用してもエラーが表示されず、正しい結果が返るようになる。