関数の可変長引数

JavaScript(ジャバスクリプト)のユーザー定義関数は、可変長引数をサポートしている。可変長引数とは、引数が、2個だったり、5個だったり、個数が定まっていないこと。

関数の引数は、引数オブジェクトという配列のようなオブジェクトに格納されている。

構文

function 関数名() {
    // 第1引数は、arguments[0]
    // 第2引数は、arguments[1]
    // 第3引数は、arguments[2]
    // 引数の数は、arguments.length
    // 全ての引数を呼び出すには、for文が便利
    for ( var $i = 0; $i < arguments.length; $i++ ) {
        // 引数の数だけ実行する処理文
    }
}

サンプル

<script type="text/javascript">
function funcA() {
    var $sum = 0;
    for ( var $i = 0; $i < arguments.length; $i++ ) {
        $sum += arguments[$i];
    }
    document.write( "合計: " + $sum + "<br />" );
}
funcA( 1 );
funcA( 1, 2 );
funcA( 1, 2, 3 );
funcA( 1, 2, 3, 4 );
funcA( 1, 2, 3, 4, 5 );
</script>

↓↓↓出力結果↓↓↓

スポンサード リンク

カテゴリー: JavaScript, ユーザー定義関数, リファレンス パーマリンク