1. 開発者向けのウェブ技術
  2. JavaScript
  3. JavaScript リファレンス
  4. 関数
  5. arguments オブジェクト
  6. length

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

arguments.length

Baseline 広く利用可能

この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2015年7月以降、すべてのブラウザーで利用可能です。

arguments.length データプロパティは、関数に渡された引数の数が入ります。

非負の整数です。

arguments.length のプロパティ属性
書込可能
列挙可能不可
設定可能

解説

arguments.length プロパティは、実際に関数に渡された引数の数を提供します。これは、定義された仮引数の数以上にも以下にもなることがあります(Function.prototype.length を参照してください)。

js
function func1(a, b, c) {
 console.log(arguments.length);
}

func1.length3 を返します。これは func1 が 3 つの形式引数を宣言しているためです。しかし、func1(1, 2, 3, 4, 5)5 をログ出力します。これは func1 が5つの引数をつけて呼び出されたためです。同様に、func1(1)1 をログ出力します。これは func1 が 1 つの引数をつけて呼び出されたためです。

arguments.length の使用

この例では、2 つ以上の数を加算する関数を定義しています。

js
function adder(base /*, num1, ..., numN */) {
 base = Number(base);
 for (let i = 1; i < arguments.length; i++) {
 base += Number(arguments[i]);
 }
 return base;
}

仕様書

仕様書
ECMAScript® 2027 Language Specification
# sec-arguments-exotic-objects

ブラウザーの互換性

関連情報

MDN の改良に協力

協力方法を知る

このページは MDN の貢献者によって に最終更新されました。

AltStyle によって変換されたページ (->オリジナル) /