関数の作成と呼び出し(前編)
Googleスプレッドシートの操作を中心にGAS(GoogleAppsScript)の基本コードを紹介しています。初心者の方が順番に読んでくだけでGASの基礎コードが理解出来るようになればなと思って、短めの記事で進めて行きたいと思います!
今回は、”関数の作成と呼び出し”について紹介します!
関数
次のコードを御覧ください。ログに「ひらちんの部屋」と出力する簡単なスクリプトです。
function test(){
Logger.log('ひらちんの部屋');
}
関数とは、まさにこれのことで、
function 関数名(){
//処理
}
一連の処理をまとめたものを言います。
1つの.gsファイルには、複数の関数を書くことが出来、関数の中で別の関数を呼び出して利用することが出来ます。
例えば、次のコードを見てください。
function main(){
test1();
test2();
}
function test1(){
Logger.log('ひらちんの部屋1');
}
function test2(){
Logger.log('ひらちんの部屋2');
}
関数「main」の中に、「test1();」「test2();」が欠かれています。これは、関数「main」から関数「test1」と関数「test2」を呼び出している書き方です。
複数の関数を.gsファイルに書くと、スクリプトエディタ上で実行する関数を選ぶことができるようになります。
関数「main」を選択して、実行します。
ログには、
ひらちんの部屋1
ひらちんの部屋2
と出力されると思います。
3つの関数の処理の流れは次の図のようになります。
また、関数は何度も使うことができるので、次のように何回も呼び出しをすることが出来ます。
function main(){
test1();
test1();
test1();
test2();
test2();
test2();
}
function test1(){
Logger.log('ひらちんの部屋1');
}
function test2(){
Logger.log('ひらちんの部屋2');
}
関数「main」を実行すると、
ひらちんの部屋1
ひらちんの部屋1
ひらちんの部屋1
ひらちんの部屋2
ひらちんの部屋2
ひらちんの部屋2
とログに表示されます。
図で表すと次のようになります。
引数と戻り値
先程紹介したコードは、関数の中でも最もシンプルな作りのもので、単純に処理のコードを実行するだけのものでした。
再掲
function test(){
Logger.log('ひらちんの部屋');
}
関数の”引数”と”戻り値”というものを覚えると、関数をもっと便利に使うことができるようになります。
まずは引数を使っている次のコードを見てください。
// 呼び出す関数
function main(){
test1("ひらちんの部屋")
}
// 呼び出される関数
function test1(str){
Logger.log(str);
}
まずは、呼び出される関数についてです。
関数名「test1」の後の「()」丸括弧の中が引数です。ここで指定した引数が、処理の中に登場して、利用されます。
そして、呼び出す関数の方は、
test1関数を呼び出すときには、「()」丸括弧内に引数(test1では、str)を指定して呼び出しを行います。ここで指定した値(この場合文字列)が、呼び出される関数で使われます。
このように、引数を指定した関数を作ることによって、呼び出し側で引数に何を渡すのかを決めることができるようになります。
次に戻り値を使った次のコードをご覧ください。
// 呼び出す関数
function main(){
var ans = kakezan(5,2)
Logger.log(ans)
}
// 呼び出される関数
function kakezan(int1, int2){
var kotae = int1 * int2
return kotae //ここが戻り値の指定
}
それでは、まずは呼び出される方の関数の説明です。
引数を使って処理をした結果を返します。書き方は次のような形です。
return ○○
そして呼び出す方の関数では、ここで返した値や変数を受け取るための変数を用意しておきます。
変数:ansに関数kakezanの答えが格納され、Logger.logで出力される流れです。図にすると、次のような形です。
このようにすることで、メインのコードと処理のコードを分離できるようになり、長いプログラムになっても分かりやすく、修正しやすい状態を保つことができるようになります。
まとめ
関数の作成と呼び出し(前編)は以上です。ここでは、関数宣言とよばれる方法での関数の作成方法と、引数・戻り値について紹介しました。関数を作成する方法は、他にも関数リテラルという方法がありますので、次回、後編で紹介します!
後編はこちら!
コメント