function func1(引数) { 。。。。 } 引数が、数値、文字列、真偽値の場合は、値渡し(値を複製して、関数に渡す)。 引数が、オブジェクト、配列の場合は、参照渡し(引数に指定したものが、書き変わる)。 ※これは、GASの特性ではなく、JavaScriptの仕様。 GASで競技プログラミングの順位付けを行うプログラムを書いているのですが、冗長になっている部分を別関数にしてくくり出すとLINE APIのreplyが使えなくなりました。自分がLINE上でキーワードを言ったらその時点での直近の大会の順位を吐いてくれる仕組みです。具体的にLogger.&nb 2018/10/31 を記述します。複数の引数を記述する場合はカンマ(,)で区切って記述します。, 関数側の仮引数には変数を記述します。関数を呼び出す側から渡されてきた値は、引数のところに記述した変数に格納されます。, 関数を呼び出す側は次のように記述します。呼び出す関数名を記述したあとに ( と ) の間に関数に渡す引数(実引数)を記述します。複数の引数を記述する場合はカンマ(,)で区切って記述します。, 関数を呼び出す側の実引数には値や式を記述します。関数を呼び出す時に記述した値は関数へ渡されます。, 次のサンプルを見てください。, 関数を呼び出す時に引数として 'Hello' を記述しています。関数が呼び出されると渡されてきた値が変数 msg に格納されます。関数の引数に記述した変数は、関数のブロック内で参照することができます。今回は引数に格納された値をコンソールに出力しています。, なお JavaScript で関数の定義で記述する引数には変数の宣言の場合と同じようにデータ型を指定することはありません。その為、どのようなデータ型の値であっても受け取ることができます。先ほどのサンプルでは最初に関数を呼び出した時は文字列の 'Hello' 、そして次に関数を呼び出した時は数値の 100 を引数に指定して関数を呼び出しています。, JavaScript の関数では、関数を呼び出す時に記述した値の数と、値を受けとる関数の引数の数が違っていてもエラーにはなりません。例えば関数が 2 つの引数を受け取るように定義しているのに、関数を呼び出す時に値を 1 つしか指定しなかった場合、関数側の 2 つの目の引数を参照すると undefined となります。, 関数は name と old の 2 つの引数を受け取ります。最初の関数の呼び出しでは値を 2 つ指定して呼び出していますが、次の関数の呼び出しでは値を 1 つだけ指定して呼び出しています。この場合でもエラーとはならず、値が渡されてこなかった引数を参照すると undefined となります。, 先ほどとは逆に関数は 2 つの引数を受け取るように定義しているのに、関数を呼び出す時に値を 3 つ指定した場合、 3 つ目の値は単に使用されないだけとなります。, 関数は name と old の 2 つの引数を受け取ります。最初の関数の呼び出しでは値を 2 つ指定して呼び出していますが、次の関数の呼び出しでは値を 3 つ指定して呼び出しています。この場合でもエラーとはならず、 3 つ目の引数は今回の場合は特に使用されません。, ※ 関数に渡されてきた値は arguments という特別なオブジェクトに格納されます。関数でいくつの引数を受け取るように設定していたとしても、 arguments オブジェクトを参照することで呼び出し側から渡されたすべての引数の値を参照することができます。 arguments については別のページで解説します。, 関数を呼び出すときに記述した値の数が関数の引数の数よりも少なかった場合、値が格納されなかった引数を参照すると undefined となっていました。このような場合に、関数の引数に対してデフォルト値を設定しておくことができます。, 引数にデフォルト値を設定しておくと、関数が呼び出された時に値が渡されてこなかった引数には代わりにデフォルト値が代入されます。, 関数の 2 つの目の引数にデフォルト値が設定されています。関数を呼び出すときに、値を 2 つ指定した場合はその値がそのまま使用されますが、値を 1 つだけ指定した場合には 2 つ目の引数にはデフォルト値である 10 が格納されます。, なお次のように 1 番目の引数にデフォルト値を設定し、 2 番目の引数にデフォルト値を設定しなくてエラーとはなりませんが、関数を呼び出す時に値を 1 つだけ指定すると、関数の 1 番目の引数に値が代入されて 2 番目の引数は undefined となります。, 関数の呼び出し側から渡されてきた値は、デフォルト値が設定されているかどうかに関わらず、関数に記述された順番で引数へ値が代入されていきます。, JavaScript では関数で引数を記述するときに、引数の前に '...' を付けると、呼び出し側から渡されてきたすべての値を要素とした配列が要素に格納されます。例えば呼び出し側で値を 2 つ指定して関数を呼び出した時は 2 つの要素を持つ配列が引数に格納され、 3 つ指定した場合は 3 つの要素を持つ配列が引数に格納されます。 '...'を付けた引数を Rest Parameter と呼びます。, 関数を呼び出すときに任意の数の値を引数として渡すことができます。, 関数では呼び出し側から渡されてきた値を順番に加算していき結果を呼び出し元に返しています。引数には配列として渡されてきた値が格納されているので、値の数は配列の length プロパティを参照することで確認できます。( length プロパティについては「配列の要素の数を取得する」を参照されてください)。, 通常の引数と組み合わせて使用することもできます。書式は次の通りです。, この場合、関数の呼び出し側から渡されてきた最初の値が引数1へ格納され、 2 番目の値が引数2へ格納され、残りの値がすべて引数3に格納されます。 '...' が付けられた変数は必ず最後に記述してください。, JavaScript で引数を使って関数へ値を渡す方法について解説しました。, 初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。.