このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。
arguments.length
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
arguments.length データプロパティは、関数に渡された引数の数が入ります。
In this article
値
非負の整数です。
arguments.length のプロパティ属性 | |
|---|---|
| 書込可能 | 可 |
| 列挙可能 | 不可 |
| 設定可能 | 可 |
解説
arguments.length プロパティは、実際に関数に渡された引数の数を提供します。これは、定義された仮引数の数以上にも以下にもなることがあります(Function.prototype.length を参照してください)。
js
function func1(a, b, c) { console.log(arguments.length);}func1.length は3 を返します。これは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;}仕様書
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-arguments-exotic-objects> |